Contoh aplikasi iOS ini menggunakan Google Home API. Gunakan panduan ini untuk membangun dan menjalankan aplikasi untuk pertama kalinya.
Prasyarat
Pastikan Anda memiliki persyaratan minimum untuk menggunakan Home API untuk iOS.
Untuk mem-build dan menginstal Aplikasi Contoh, Anda memerlukan komputer yang telah diinstal Xcode versi 15.3+.
Untuk menguji aplikasi, Anda memerlukan:
- Akun Google.
- ID Apple yang terdaftar di Apple Developer Program untuk membuat file konfigurasi perangkat fisik. Jika belum dibuat, pendaftaran akan dikenai biaya tambahan dan mungkin memerlukan waktu hingga 48 jam untuk diselesaikan.
- Perangkat iOS (bukan simulator) yang menjalankan iOS 16.4+ yang disiapkan dengan akun pengujian.
- Jaringan Wi-Fi.
- Hub Google yang mendukung Home API.
- Thread Border Router (TBR) jika perangkat Anda memerlukan Thread dan hub Anda tidak memiliki kemampuan tersebut.
- Minimal satu jenis perangkat yang didukung.
Untuk pengembangan, Anda memerlukan Mac yang memenuhi persyaratan berikut:
- macOS Sonoma atau yang lebih baru
- Xcode 15.3 atau yang lebih baru
Membuat file konfigurasi deployment Apple
Pertama, aplikasi memerlukan kemampuan App Attest untuk diaktifkan. Akibatnya, library ini tidak dapat di-deploy ke perangkat simulator. Hal ini mengharuskan Anda membuat profil penyediaan dengan hak App Attest.
Kedua, Grup Aplikasi harus diaktifkan untuk komunikasi antara aplikasi
dan MatterExtension. Hal ini mengharuskan Anda mendaftarkan ID grup aplikasi.
Untuk mengetahui detail selengkapnya, lihat Membuat profil penyediaan pengembangan Apple tentang profil penyediaan.
Berikut adalah langkah-langkah minimum yang diperlukan untuk men-deploy aplikasi:
- Buat ID grup aplikasi agar aplikasi Anda dapat berkomunikasi dengan
MatterExtension.- Login ke Apple Developer Portal.
- Tambahkan ID grup aplikasi. Misalnya, ID tersebut dapat
diformat sebagai
group.com.company.commissioning.
- Daftarkan perangkat pengujian Anda ke akun developer.
Buat profil untuk target aplikasi Anda.
- Tentukan ID paket aplikasi untuk aplikasi Anda.
ID harus unik dan deskriptif. Misalnya, ID tersebut dapat
diformat sebagai
com.company.HomeApiSample. ID ini akan digunakan di seluruh bagian ini. - Daftarkan ID Aplikasi Anda. Saat diminta, tambahkan kemampuan App Attest dan App Groups.
Edit ID Aplikasi yang baru dibuat dan konfigurasikan kemampuan Grup Aplikasi untuk menambahkan ID grup aplikasi yang terdaftar.
Buat profil penyediaan pengembangan untuk pengembangan aplikasi Anda. Kaitkan ke ID Aplikasi yang baru dibuat dan perangkat pengujian yang dipilih. Pastikan Anda memiliki sertifikat developer untuk menandatangani aplikasi.
- Jika Anda belum membuatnya, lihat Membuat sertifikat ID Developer untuk mendapatkan petunjuk.
- Tentukan ID paket aplikasi untuk aplikasi Anda.
ID harus unik dan deskriptif. Misalnya, ID tersebut dapat
diformat sebagai
Buat profil untuk target
MatterExtensionAnda.- Tentukan ID paket aplikasi untuk
MatterExtensionAnda. ID harus diwarisi dari ID aplikasi. Misalnya, formatnya dapat berupacom.company.HomeApiSample.MatterExtension. - Daftarkan ID Aplikasi Anda. Saat diminta, tambahkan kemampuan App Group.
- Edit ID Aplikasi yang baru dibuat dan konfigurasikan kemampuan App Groups untuk menambahkan ID grup aplikasi terdaftar yang dibuat di langkah sebelumnya.
- Buat profil penyediaan pengembangan
untuk
MatterExtension.
- Tentukan ID paket aplikasi untuk
Membuat client ID OAuth dan mengaktifkan Home API
Aplikasi Anda memerlukan client ID OAuth untuk mengidentifikasi dirinya ke backend autentikasi Google. Untuk iOS dan aplikasi, jenis aplikasi client ID OAuth harus dikonfigurasi sebagai iOS. Aplikasi ini juga akan melakukan panggilan ke Home API. Untuk mengaktifkan fungsi ini, API harus diaktifkan di project Google Cloud.
Membuat client ID OAuth
- Di konsol Google Cloud, buka dasbor pemilih project dan pilih project yang ingin Anda gunakan untuk membuat kredensial OAuth.
- Buka halaman APIs and Services dengan mengklik tombol menu di sisi kiri atas > View All Products > APIs & Services.
- Di menu navigasi, klik Credentials.
Jika Anda belum mengonfigurasi layar izin untuk project Google Cloud ini, tombol Configure consent screen akan muncul. Jika demikian, konfigurasikan layar izin Anda menggunakan prosedur berikut. Jika layar izin OAuth Anda telah dikonfigurasi dan status publikasinya adalah Pengujian, pastikan akun pengujian yang akan Anda gunakan ditambahkan ke grup Pengguna pengujian. Jika tidak, lanjutkan ke langkah berikutnya.
- Bergantung pada kasus penggunaan Anda, pilih Internal atau External, lalu klik Create. Panel OAuth consent screen akan ditampilkan.
- Masukkan informasi di halaman informasi Aplikasi sesuai dengan petunjuk di layar, lalu klik Simpan dan lanjutkan. Panel Scopes akan ditampilkan.
- Anda tidak perlu menambahkan cakupan apa pun, jadi klik Save and continue. Panel Test users akan ditampilkan.
- Jika Anda memilih untuk membuat layar izin internal, Anda harus menambahkan pengguna untuk menguji akses ke aplikasi Anda. Klik Tambahkan pengguna. Panel Add users akan ditampilkan. Pengguna pengujian memiliki hak istimewa untuk memberikan izin di aplikasi Anda. Di kolom kosong, tambahkan satu atau beberapa alamat email Akun Google, lalu klik Tambahkan.
- Klik Simpan dan lanjutkan. Panel Summary akan ditampilkan.
- Tinjau informasi layar izin OAuth Anda, lalu klik Back to dashboard.
Di panel menu kiri, klik Credentials untuk membuat client ID OAuth Anda.

- Klik tombol CREATE CREDENTIALS, lalu pilih OAuth client ID.
- Di bagian application type, pilih iOS.
- Masukkan ID Paket dengan ID aplikasi dan ID Tim Apple Developer. Kolom lainnya bersifat opsional dan dapat dibiarkan kosong.
- Klik CREATE, dan catat Client ID yang dibuat atau DOWNLOAD PLIST. Ini akan digunakan nanti untuk mengaktifkan fungsi alur izin. Untuk mengetahui informasi selengkapnya, lihat bagian Membuat kredensial otorisasi.
- Klik tombol CREATE CREDENTIALS, lalu pilih OAuth client ID.
Mengaktifkan Home API
Mengaktifkan akses ke Home API.
- Di tab APIs and Services, klik Enabled APIs & Services.
- Klik ENABLE APIS AND SERVICES di bagian atas halaman.
- Telusuri
HOME API, lalu pilih. - Di halaman detail Home API, klik ENABLE.
Mendownload kode sumber
Kode sumber untuk Aplikasi Contoh tersedia di GitHub.
Buka tempat Anda ingin menyimpan project, lalu clone project tersebut:
git clone https://github.com/google-home/google-home-api-sample-app-ios.gitUntuk memuat project di Xcode, klik File > Open, lalu pilih
GoogleHomeAPISampleIOS.xcodeproj di root repositori yang di-clone.
Menambahkan SDK ke project
Project Aplikasi Contoh memerlukan beberapa informasi tambahan agar dapat di-build. Hal ini termasuk menambahkan file Framework SDK secara lokal, mengisi informasi ID akun developer, dan mengisi client ID OAuth Anda.
Membangun aplikasi
Untuk mendownload SDK iOS Home API, Anda harus login terlebih dahulu ke Google Home Developers.
Konfigurasikan project Xcode Anda untuk Aplikasi Contoh:
- Ekstrak SDK yang didownload ke direktori
ThirdParty/GoogleHomeSDKyang terkait dengan direktori root project. - Konfigurasikan ID Developer dan klien OAuth:
- Di panel navigasi, cari folder GoogleHomeAPISampleIOS dan buka file Info.plist untuk diedit.
Di file Info.plist, isi GIDClientID dengan client ID OAuth Anda (lihat bagian Menyiapkan izin OAuth), Cloud Project Number yang sesuai dengan project cloud Anda, dan GIDTeamID dengan Apple Developer Team ID dari akun developer yang digunakan selama proses pendaftaran OAuth.
Menambahkan Kemampuan App Attest:
- Di panel navigasi Xcode, pilih file project
GoogleHomeAPISampleIOSuntuk mengedit konfigurasi project. - Klik tab Signing and Capabilities di bagian atas, lalu pilih
target
GoogleHomeAPISampleIOSdi sisi kiri di bagian TARGETS. - Tepat di bawah tab Signing and Capabilities, klik + Capability dan telusuri App Attest.
- Klik App Attest untuk menambahkan. Jika kemampuan ini tidak ada dalam penelusuran, project mungkin telah menambahkannya.
- Di panel navigasi Xcode, pilih file project
Tambahkan kemampuan App Groups.

- Buka project GoogleHomeAPISampleIOS > target GoogleHomeAPISampleIOS.
- Klik Signing & Capabilities > + Capability.
- Pilih kemampuan App Groups.
- Klik ikon + di bagian App Groups dan tambahkan ID Grup Aplikasi untuk aplikasi Anda yang Anda tambahkan di Portal Developer Apple.
- Ulangi langkah-langkah ini untuk target MatterAddDeviceExtension guna menambahkannya ke App Groups.
Memperbarui ID paket
- Agar berhasil menjalankan dan men-deploy Aplikasi Contoh di hardware menggunakan sertifikat developer dan profil penyediaan, Anda harus memberikan ID paket yang unik. ID ini harus sama dengan ID yang terkait dengan kredensial klien OAuth Anda (lihat di atas).
- Di panel navigasi Xcode, pilih file project
GoogleHomeAPISampleIOSuntuk mengedit konfigurasi project. - Klik tab Signing and Capabilities di bagian atas, lalu pilih
target
GoogleHomeAPISampleIOSdi sisi kiri di bagian TARGETS. - Pilih kolom ID paket di bagian Signing dan masukkan ID unik untuk Aplikasi.
- Pilih atau instal profil penyediaan yang terkait dengan paket tersebut dengan hak yang diperlukan.
- Ulangi langkah-langkah ini untuk target
MatterAddDeviceExtensionguna memasukkan ID paket untuk ekstensi dan mengimpor profil penyediaan terdaftarnya.
Perbarui ID grup aplikasi yang terdaftar dalam kode.
- Aplikasi harus mengonfigurasi instance SDK untuk menggunakan ID Grup Aplikasi untuk fitur seperti commissioning perangkat. Update
aplikasi untuk menggunakan ID Grup Aplikasi yang terdaftar di Portal Developer
Apple dengan menelusuri string
HOME_API_TODO_ADD_APP_GROUPdan ganti setiap instance dengan ID tersebut.
Konfigurasi ini dibuat dalam file berikut:
GoogleHomeAPISampleIOS.swiftsaat SDK diinisialisasi.RequestHandler.swiftCommissioningManager.swift
- Aplikasi harus mengonfigurasi instance SDK untuk menggunakan ID Grup Aplikasi untuk fitur seperti commissioning perangkat. Update
aplikasi untuk menggunakan ID Grup Aplikasi yang terdaftar di Portal Developer
Apple dengan menelusuri string
Konfigurasikan cakupan OAuth di
GoogleHomeAPISampleIOS.swift. Secara default, kode sumber Aplikasi Contoh menggunakan cakupanhttps://www.googleapis.com/auth/home.platform.v2. Banyak fitur di Aplikasi Contoh dibatasi oleh cakupanhome.platform.v2dan memerlukan persetujuan partner untuk mengaksesnya. Untuk menjalankan Aplikasi Contoh dengan cakupanhttps://www.googleapis.com/auth/home.platform.selected.devicesstandar, bukaGoogleHomeAPISampleIOS.swiftdan ubahhomePlatformOAuthScopediHome.configuremenjadiHomePlatformOAuthScope.v1:Home.configure { $0.sharedAppGroup = "HOME_API_TODO_ADD_APP_GROUP" $0.homePlatformOAuthScope = HomePlatformOAuthScope.v1 ... }