Aplikasi iOS contoh ini menggunakan Google Home API. Gunakan panduan ini untuk mem-build 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 dengan Xcode versi 15.3+ yang terinstal di dalamnya.
Untuk menguji aplikasi, Anda memerlukan:
- Akun Google.
- Apple ID 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.
- A Thread Border Router (TBR) jika perangkat Anda memerlukan Thread dan hub Anda tidak memiliki kemampuan tersebut.
- Setidaknya 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 diaktifkan. Oleh karena itu, aplikasi tidak dapat di-deploy ke perangkat simulator. Hal ini mengharuskan Anda membuat profil provisi dengan hak App Attest.
Kedua, aplikasi memerlukan Grup Aplikasi diaktifkan untuk komunikasi antara aplikasi dan MatterExtension. Hal ini mengharuskan Anda mendaftarkan ID grup aplikasi.
Untuk mengetahui detail selengkapnya, lihat Apple's Membuat profil provisi pengembangan di profil provisi.
Berikut ini garis besar 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 di
format 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 konfigurasi kemampuan App Groups untuk menambahkan ID grup aplikasi terdaftar.
Buat profil provisi pengembangan untuk pengembangan aplikasi Anda. Kaitkan profil tersebut 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 mengetahui petunjuknya.
- Tentukan ID paket aplikasi untuk aplikasi Anda. ID harus unik dan deskriptif. Misalnya, ID tersebut dapat di
format sebagai
Buat profil untuk target
MatterExtensionAnda.- Tentukan ID paket aplikasi untuk
MatterExtensionAnda. ID harus diwarisi dari ID aplikasi. Misalnya, ID tersebut dapat diformat sebagaicom.company.HomeApiSample.MatterExtension. - Daftarkan ID Aplikasi Anda. Saat diminta, tambahkan kemampuan App Group.
- Edit ID Aplikasi yang baru dibuat dan konfigurasi kemampuan App Groups untuk menambahkan ID grup aplikasi terdaftar yang dibuat pada langkah sebelumnya.
- Buat profil provisi 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 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 API dan Layanan dengan mengklik tombol menu di sisi kiri atas > Lihat Semua Produk > API & Layanan.
- Di menu navigasi, klik Kredensial.
Jika Anda belum mengonfigurasi layar izin untuk project Google Cloud ini, tombol Konfigurasi layar izin akan muncul. Dalam hal ini, konfigurasi 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 Eksternal, dan lalu klik Buat. Panel Layar izin OAuth akan ditampilkan.
- Masukkan informasi di halaman Informasi aplikasi sesuai dengan petunjuk di layar, lalu klik Simpan dan lanjutkan. Panel Cakupan akan ditampilkan.
- Anda tidak perlu menambahkan cakupan apa pun, jadi klik Simpan dan lanjutkan. Panel Pengguna pengujian akan ditampilkan.
- Jika Anda memilih untuk membuat layar izin internal, Anda harus menambahkan pengguna untuk menguji akses ke aplikasi Anda. Klik Tambahkan pengguna. Panel Tambahkan pengguna 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 Ringkasan akan ditampilkan.
- Tinjau informasi layar izin OAuth Anda, lalu klik Kembali ke dasbor.
Di panel menu sebelah kiri, klik Kredensial untuk membuat client ID OAuth Anda.

- Klik tombol BUAT KREDENSIAL, lalu pilih client ID OAuth.
- Di bagian jenis aplikasi, pilih iOS.
- Masukkan ID Paket dengan ID aplikasi dan Apple Developer ID Tim. Kolom lainnya bersifat opsional dan dapat dibiarkan kosong.
- Klik BUAT, dan catat Client ID atau DOWNLOAD PLIST yang dibuat. ID ini akan digunakan nanti untuk mengaktifkan fungsi alur izin. Untuk mengetahui informasi selengkapnya, lihat bagian Membuat kredensial otorisasi
- Klik tombol BUAT KREDENSIAL, lalu pilih client ID OAuth.
Mengaktifkan Home API
Aktifkan akses ke Home API.
- Di tab API dan Layanan, klik API &Layanan yang Diaktifkan.
- Klik AKTIFKAN API DAN LAYANAN di bagian atas halaman.
- Cari
HOME API, lalu pilih. - Di halaman detail Home API, klik AKTIFKAN.
Mendownload kode sumber
Kode sumber untuk Aplikasi Contoh tersedia di GitHub.
Buka tempat Anda ingin menyimpan project, lalu clone:
git clone https://github.com/google-home/google-home-api-sample-app-ios.gitUntuk memuat project di Xcode, klik File > Buka, 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 mencakup penambahan file Framework SDK secara lokal, pengisian informasi ID akun developer, dan pengisian client ID OAuth Anda.
Mem-build aplikasi
Untuk mendownload Home API iOS SDK, Anda harus login ke Google Home Developers terlebih dahulu.
Konfigurasi project Xcode Anda untuk Aplikasi Contoh:
- Buka SDK yang didownload ke direktori
ThirdParty/GoogleHomeSDKrelatif terhadap direktori root project. - Konfigurasi ID developer dan client ID 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), Nomor Project Cloud yang sesuai dengan project cloud Anda, dan GIDTeamID dengan ID Tim Apple Developer dari akun developer yang digunakan selama proses pendaftaran OAuth.
Tambahkan Kemampuan App Attest:
- Di panel navigasi Xcode, pilih file project
GoogleHomeAPISampleIOSuntuk mengedit konfigurasi project. - Klik tab Signing and Capabilities di bagian atas dan pilih target
GoogleHomeAPISampleIOSdi sisi kiri di bagian TARGETS. - Tepat di bawah tab Signing and Capabilities, klik + Capability dan cari App Attest.
- Klik App Attest untuk menambahkan. Jika kemampuan ini tidak ada dalam penelusuran, project mungkin sudah 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 App Groups untuk aplikasi Anda yang ditambahkan di Portal Developer Apple.
- Ulangi langkah-langkah ini untuk target MatterAddDeviceExtension agar dapat ditambahkan ke App Groups.
Perbarui ID Paket
- Agar berhasil menjalankan dan men-deploy Aplikasi Contoh di hardware menggunakan sertifikat developer dan profil provisi Anda, 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 dan 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 provisi yang terkait dengan paket tersebut dengan hak yang diperlukan.
- Ulangi langkah-langkah ini untuk target
MatterAddDeviceExtensionguna memasukkan ID Paket untuk ekstensi dan mengimpor profil provisi terdaftarnya.
Perbarui ID grup aplikasi terdaftar dalam kode.
- Aplikasi harus mengonfigurasi instance SDK untuk menggunakan ID Grup Aplikasi untuk fitur seperti commissioning perangkat. Perbarui aplikasi untuk menggunakan ID Grup Aplikasi yang terdaftar di Apple Developer Portal dengan menelusuri string
HOME_API_TODO_ADD_APP_GROUPdan mengganti setiap instance dengan ID tersebut.
Konfigurasi ini dilakukan 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. Perbarui aplikasi untuk menggunakan ID Grup Aplikasi yang terdaftar di Apple Developer Portal dengan menelusuri string
Konfigurasi 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 yang 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 ... }