1. Ringkasan
Action Aplikasi memungkinkan pengguna langsung meluncur ke fitur aplikasi tertentu dari Asisten Google untuk membantu Anda memperluas jangkauan aplikasi Android. Sebagai developer Android, Anda dapat menerapkan kemampuan, yang memungkinkan Asisten Google mengetahui jenis fungsi yang tersedia bagi pengguna dan cara memenuhi permintaan ini sesuai keinginan Anda.
Pada codelab Action Aplikasi yang pertama, Anda telah mempelajari cara memperluas Asisten Google ke contoh aplikasi kebugaran dengan menerapkan intent bawaan (BII) dari kategori BII Kesehatan dan Kebugaran. BII diatur ke dalam kategori yang mewakili jenis tugas yang sering diminta pengguna untuk dilakukan oleh Asisten.
Dalam codelab ini, Anda akan mempelajari cara menambahkan Action Aplikasi ke aplikasi menggunakan BII dari kategori BII "Umum", yang mewakili tugas aplikasi umum yang dapat dipenuhi oleh hampir semua aplikasi Android.
Codelab ini mencakup konsep tingkat menengah untuk pengembangan dengan Action Aplikasi. Anda harus memiliki pengalaman sebelumnya dalam mengembangkan aplikasi Android dan menerapkan intent Android.
Yang akan Anda buat
Dalam codelab ini, Anda akan menambahkan dua BII Umum ke contoh aplikasi Daftar tugas, yang memungkinkan pengguna meminta Asisten untuk:
- Membuka fitur dalam aplikasi dengan BII
actions.intent.OPEN_APP_FEATURE
. - Menelusuri konten menggunakan penelusuran dalam aplikasi dengan BII
actions.intent.GET_THING
.
Gambar 1. Tiga layar progresif tempat Asisten Google menampilkan tugas aktif di aplikasi.
Yang akan Anda pelajari
Anda akan mempelajari cara menggunakan BII kategori Umum untuk memperluas Asisten ke sebagian besar aplikasi Android. Anda juga akan mempelajari cara menguji BII Umum dengan plugin Asisten Google untuk Android Studio.
Prasyarat
- Terminal untuk menjalankan perintah shell dengan git terinstal.
- Rilis stabil terbaru dari Android Studio.
- Perangkat Android fisik atau virtual dengan akses Internet ke Google Play Store untuk menguji tindakan Anda.
- Akun Google Anda yang sama harus login ke Android Studio, serta aplikasi Google dan aplikasi Asisten Google di perangkat pengujian Anda.
Dalam codelab ini, Anda akan menggunakan perangkat Android (fisik atau virtual) untuk menguji tindakan Anda. Jika menggunakan perangkat fisik, pastikan perangkat tersebut terhubung ke mesin pengembangan lokal Anda. Anda juga harus login ke aplikasi Google di perangkat tersebut, dan login ke Android Studio, menggunakan akun Google yang sama. Perangkat juga harus memiliki aplikasi Asisten Google yang sudah terinstal.
2. Memahami cara kerjanya
Action Aplikasi menghubungkan pengguna dari Asisten Google ke aplikasi Android Anda. Namun, bagaimana cara kerjanya?
Saat pengguna menyebutkan kepada Asisten bahwa mereka ingin menggunakan aplikasi Anda, Asisten mencari Action Aplikasi yang terdaftar ke aplikasi Anda dari file shortcuts.xml
. File ini berisi kemampuan aplikasi, yang menautkan intent bawaan Asisten atau intent kustom ke intent Android atau deep link.
Saat pengguna mengucapkan kueri kepada Asisten, Asisten akan mengurai input pengguna dan mencocokkannya dengan intent Action Aplikasi (dalam codelab ini yang dimaksud adalah BII). Asisten mengetahui kemampuan yang Anda dukung dari file shortcuts.xml
di Aplikasi Android. Dengan pencocokan intent, kemampuan dengan BII tersebut berisi cara memenuhi permintaan tersebut sesuai dengan keinginan Anda. Dalam codelab ini, fulfillment adalah intent Android yang meluncurkan aktivitas di aplikasi Anda.
Diagram berikut menunjukkan alur Asisten ini:
Gambar 2. Alur yang menjelaskan cara Asisten Google memproses kueri suara.
File project shortcuts.xml
berisi informasi berikut untuk setiap Action Aplikasi:
- Intent bawaan atau intent kustom yang digunakan Action Aplikasi
- Aktivitas Android atau deep link yang harus diberikan kepada pengguna
- Cara parameter untuk intent bawaan dipetakan ke informasi yang diberikan kepada Asisten oleh pengguna
Aktivitas Android Anda kemudian memfilter dan menangani deep link atau intent Android yang disediakan untuk memberikan fungsi yang diinginkan pengguna. Hasilnya adalah pengalaman pengguna tempat Asisten memanggil fungsi aplikasi Anda sebagai respons atas kueri pengguna.
3. Menyiapkan lingkungan pengembangan
Codelab ini menggunakan aplikasi contoh Daftar tugas untuk Android. Aplikasi contoh ini dapat menambahkan item ke daftar tugas, menelusuri item menurut kategori, dan melihat informasi tentang tugas yang telah selesai.
Mendownload file dasar
Jalankan perintah berikut untuk meng-clone repositori GitHub aplikasi contoh:
git clone --branch codelab-start https://github.com/actions-on-google/appactions-common-biis-kotlin.git
Setelah meng-clone repositori, ikuti langkah-langkah berikut untuk membukanya di Android Studio:
- Dalam dialog Welcome to Android Studio, klik Import project.
- Cari dan pilih folder tempat Anda meng-clone repositori.
Untuk melihat versi aplikasi yang mewakili codelab yang sudah selesai, clone repo aplikasi contoh menggunakan tanda --branch master
.
Memperbarui ID aplikasi Android
Memperbarui ID aplikasi akan mengidentifikasi aplikasi di perangkat pengujian Anda secara unik dan menghindari error "Nama paket duplikat" jika aplikasi diupload ke Konsol Play. Untuk memperbarui ID aplikasi, buka app/build.gradle
:
android {
...
defaultConfig {
applicationId "com.MYUNIQUENAME.android.fitactions"
...
}
}
Ganti "MYUNIQUENAME" di kolom applicationId
menjadi sesuatu yang unik bagi Anda.
Menguji aplikasi di perangkat Anda
Sebelum membuat lebih banyak perubahan pada aplikasi, sebaiknya Anda mengetahui apa saja yang dapat dilakukan aplikasi contoh. Untuk menjalankan aplikasi di emulator, ikuti langkah-langkah berikut:
- Di Android Studio, pilih Run > Run app atau klik Run di toolbar.
- Dalam dialog Select Deployment Target, pilih perangkat lalu klik OK. Versi OS yang direkomendasikan adalah Android 10 (API level 30) atau lebih tinggi, meskipun Action dapat berjalan di perangkat Android 5 (API level 21).
- Tekan lama tombol Home untuk menyiapkan Asisten dan memastikannya berfungsi. Anda harus login ke Asisten di perangkat jika belum melakukannya.
Untuk informasi selengkapnya tentang perangkat virtual Android, lihat Membuat dan mengelola perangkat virtual.
Gambar 3. Animasi yang mendemonstrasikan aplikasi contoh Daftar tugas.
Jelajahi aplikasi secara singkat untuk melihat apa yang dapat dilakukannya. Dengan mengetuk ikon Plus, Anda akan membuat item tugas baru, dan item menu di kanan atas memungkinkan Anda menelusuri dan memfilter item tugas menurut status penyelesaian.
Menginstal plugin pengujian
Plugin Asisten Google memungkinkan Anda menguji Action Aplikasi di perangkat pengujian. Jika Anda belum memiliki alat pengujian, instal dengan mengikuti langkah-langkah berikut:
- Buka File > Settings (Android Studio > Preferences di MacOS).
- Di bagian Plugins, buka Marketplace dan telusuri "Google Assistant". Anda juga dapat secara manual mendownload dan menginstal alat pengujian.
- Jika Anda tidak dapat menemukan plugin di Marketplace, download plugin secara manual dan ikuti petunjuk tentang cara Menginstal plugin dari disk.
- Instal alat tersebut, lalu mulai ulang Android Studio.
4. Menambahkan kemampuan BII Melakukan Tugas
BII actions.intent.GET_THING
memperluas fungsi penelusuran dalam aplikasi ke Asisten Google. Pada langkah ini, Anda akan mengimplementasikan dan menguji BII GET_THING
, yang memungkinkan pengguna menelusuri tugas tertentu di aplikasi contoh.
Menentukan kemampuan Melakukan Tugas
Selama Action Aplikasi yang terkait penelusuran, Asisten mengekstrak istilah penelusuran dari kueri pengguna ke dalam parameter BII thing.name
, lalu meneruskan nilai tersebut ke aplikasi Android.
Untuk menambahkan BII GET_THING
ke aplikasi Anda, perbarui shortcuts.xml
, yang terletak di direktori project contoh app/src/main/res/xml
, dengan elemen <capability>
dalam tag <shortcuts>
level teratas:
shortcuts.xml
<shortcuts ....>
<capability android:name="actions.intent.GET_THING">
<intent
android:action="android.intent.action.VIEW"
android:targetPackage="com.yourApplicationId.appaction"
android:targetClass="com.example.android.architecture.blueprints.todoapp.tasks.TasksActivity">
<parameter
android:name="thing.name"
android:key="q"/>
</intent>
</capability>
</shortcuts>
Konfigurasi di atas:
- Mendeklarasikan bahwa aplikasi merespons BII
GET_THING
. - Menentukan cara membuat intent Android yang meluncurkan aplikasi sebagai respons terhadap BII tersebut.
- Aktivitas diidentifikasi menggunakan
targetPackage
dantargetClass
. - Parameter BII
thing.name
dipetakan ke dalam Tambahan Intent bernamaq
.
- Aktivitas diidentifikasi menggunakan
Aktivitas yang dinamai tersebut harus ada dalam manifes aplikasi dan diekspor.
Aplikasi Android yang disediakan berisi metadata, sehingga AndroidManifest mengetahui file shortcuts.xml
:
<meta-data
android:name="android.app.shortcuts"
android:resource="@xml/shortcuts" />
Menguji Action Aplikasi Anda
Agar dapat menguji penelusuran dalam aplikasi untuk aplikasi Anda dari Asisten, ikuti langkah-langkah berikut:
- Pastikan perangkat Android Anda terhubung.
- Buka Tools > Google Assistant > App Actions Test Tool.
- Klik Create Preview untuk menerima nilai default untuk App name dan locale. Jika diminta, tinjau dan setujui kebijakan dan persyaratan layanan Action Aplikasi.
- Pada langkah pertama, saat alat meminta Anda untuk memilih dan mengonfigurasi BII, pilih
actions.intent.GET_THING
. Ubah nilainame
darirunning shoes
menjadimilk
. - Klik Run App Action.
Dalam pengujian ini, BII GET_THING
menggunakan atribut name
untuk menelusuri tugas yang berisi "milk" (susu) di aplikasi. Seperti Action Aplikasi sebelumnya, Anda dapat menguji tindakan menggunakan alat pengujian, atau cukup ucapkan "Ok Google, telusuri campuran bahan kue di Daftar Tugas", atau frasa penelusuran lainnya, di perangkat pengujian.
5. Menambahkan kemampuan BII Buka fitur aplikasi
Pada langkah ini, Anda menerapkan BII Buka fitur aplikasi, yang memungkinkan pengguna melihat tugas aktif dan yang sudah selesai menggunakan Asisten. Untuk melakukannya, lengkapi kemampuan dalam shortcuts.xml
yang berisi informasi tentang cara kemampuan dipicu, cara parameter diteruskan, dan intent Android mana yang akan dipanggil. Untuk codelab ini, Anda akan menggunakan BII OPEN_APP_FEATURE
. Setelah menerapkan BII ini, Anda akan menguji Action di perangkat Anda.
Menambahkan kemampuan Buka fitur aplikasi
Tambahkan kemampuan kedua untuk Buka fitur aplikasi di shortcuts.xml
di bawah elemen Kemampuan Melakukan Tugas:
shortcuts.xml
<capability android:name="actions.intent.OPEN_APP_FEATURE">
<intent
android:action="android.intent.action.VIEW"
android:targetPackage="yourApplicationId"
android:targetClass="com.example.android.architecture.blueprints.todoapp.tasks.TasksActivity">
<parameter
android:name="feature"
android:key="feature"/>
</intent>
</capability>
Kemampuan ini memetakan BII Buka fitur aplikasi dan intent Android secara bersamaan, sehingga saat Buka fitur aplikasi dipicu, intent Android akan terpicu.
Sebelum memicu intent Android, parameter yang didukung diambil dari input pengguna. BII OPEN_APP_FEATURE
mendukung satu parameter, feature
, yang mewakili fitur aplikasi yang diekstrak dari kueri pengguna. Ada dua jenis fitur yang akan didukung aplikasi ini: Tugas Aktif dan Tugas Selesai. Fitur ini memungkinkan pengguna membuka aplikasi dengan tampilan daftar tugas mereka yang difilter. Anda perlu menggunakan inventaris inline untuk mendukung fitur ini.
Menangani parameter intent menggunakan inventaris inline
Parameter intent mewakili elemen yang diekstrak dari kueri pengguna. Misalnya, jika pengguna mengucapkan sesuatu seperti, "Ok Google, pesan pizza dari ExampleApp", Asisten mengekstrak "pizza" ke parameter intent food.item
schema.org, dan meneruskan parameter ke tindakan Anda untuk ditangani.
BII Buka fitur aplikasi mendukung satu parameter, feature
, yang mewakili fitur aplikasi yang diekstrak dari kueri pengguna. Inventaris inline diperlukan untuk parameter ini, yang memberikan serangkaian nama fitur aplikasi yang didukung kepada Asisten untuk dicocokkan dengan nilai parameter.
Untuk menangani parameter intent feature
, tambahkan pintasan ke shortcuts.xml
dengan kode berikut di atas kemampuan Buka fitur aplikasi:
shortcuts.xml
<shortcut
android:shortcutId="active_tasks"
android:shortcutShortLabel="@string/label_active"
android:enabled="false">
<capability-binding
android:key="actions.intent.OPEN_APP_FEATURE">
<parameter-binding
android:key="feature"
android:value="@array/active_tasks_synonyms" />
</capability-binding>
</shortcut>
<shortcut
android:shortcutId="completed_tasks"
android:shortcutShortLabel="@string/label_completed"
android:enabled="false">
<capability-binding
android:key="actions.intent.OPEN_APP_FEATURE">
<parameter-binding
android:key="feature"
android:value="@array/completed_tasks_synonyms" />
</capability-binding>
</shortcut>
Dalam kode di atas, Anda menentukan inventaris inline, yang ditampilkan sebagai elemen shortcut
dengan kemampuan dan binding parameter. Pintasan dapat digunakan sebagai inventaris untuk parameter BII. Asisten Google mencocokkan kueri pengguna dengan nilai dalam binding parameter Pintasan. Untuk nilai parameter yang cocok, shortcutId
akan ditambahkan ke intent fulfillment. Saat pengguna mengaktifkan BII OPEN_APP_FEATURE
dengan permintaan, Asisten mencocokkan nilai parameter fitur dengan atribut nilai pintasan, yang meneruskan nilai tersebut ke targetClass
sebagai parameter
di Extra
.
Misalnya, jika pengguna mengucapkan sesuatu seperti, "Ok Google, tampilkan tugas saya yang sudah selesai di ExampleApp", Asisten mencocokkan nilai parameter intent fitur, "tugas selesai", dengan pintasan inventaris terkait, yang meneruskan nilai tersebut ke kemampuan OPEN_APP_FEATURE
. Asisten kemudian memicu intent Android.
Menguji Action Aplikasi Anda
Selama pengembangan dan pengujian, Anda menggunakan plugin Asisten Google untuk melihat pratinjau Action Aplikasi dengan Asisten di perangkat pengujian. Anda juga dapat menggunakan alat untuk menyesuaikan parameter intent Action Aplikasi, untuk menguji bagaimana tindakan Anda menangani berbagai cara yang mungkin digunakan pengguna untuk meminta Asisten menjalankannya.
Untuk menguji Action Aplikasi Anda dengan alat pengujian, ikuti langkah-langkah berikut:
- Hubungkan perangkat pengujian Android fisik Anda, atau mulai emulator Android
- Jika alat pengujian tidak terlihat, buka dengan membuka Tools > Google Assistant > App Actions Test Tool.
- Klik tombol Update untuk memperbarui pratinjau.
- Pada langkah pertama, saat alat meminta Anda untuk memilih dan mengonfigurasi BII, pilih
actions.intent.OPEN_APP_FEATURE
. - Di kotak feature, perbarui nilai
History
default denganCompleted tasks
. - Klik Run App Action.
Sebagai alternatif, Anda dapat menggunakan nama panggilan langsung di aplikasi Asisten pada perangkat untuk mencoba Action Aplikasi Anda. Misalnya, Anda bisa mengucapkan "Ok Google, tampilkan tugas yang sudah selesai di Daftar Tugas".
6. Langkah berikutnya
Selamat!
Kini Anda memiliki kemampuan untuk mengaktifkan hampir semua aplikasi Android agar berfungsi dengan Asisten Google, menggunakan BII umum.
Yang telah kita bahas
Dalam codelab ini, Anda telah mempelajari:
- Cara mengizinkan pengguna mempelajari fitur aplikasi tertentu secara mendalam menggunakan Asisten.
- Cara pengguna mengakses penelusuran dalam aplikasi dari Asisten.
- Cara menguji BII umum menggunakan Plugin Asisten Google.
Langkah berikutnya
Dari sini, Anda dapat terus mengoptimalkan aplikasi Daftar tugas. Untuk mereferensikan project yang sudah selesai, lihat repo –cabang master di GitHub.
Berikut beberapa saran untuk mempelajari lebih lanjut cara memperluas aplikasi ini dengan Action Aplikasi:
- Lihat Daftar tugas contoh dengan Google Analytics for Firebase untuk mempelajari cara melacak performa Action Aplikasi Anda.
- Buka referensi intent bawaan Action Aplikasi guna menemukan cara lainnya untuk memperluas aplikasi Anda ke Asisten.
Untuk melanjutkan perjalanan Actions on Google Anda, pelajari referensi berikut:
- developers.google.com/assistant: Situs dokumentasi resmi untuk Actions on Google.
- Indeks contoh Action Aplikasi: Aplikasi contoh dan kode untuk menjelajahi kemampuan Action Aplikasi.
- Repo GitHub Actions on Google: Kode contoh dan library.
- r/GoogleAssistantDev: Komunitas Reddit resmi untuk developer yang bekerja dengan Asisten Google.
Ikuti kami di Twitter @ActionsOnGoogle untuk terus memantau pengumuman terbaru kami, dan kirim tweet ke #AoGDevs untuk membagikan karya yang telah Anda buat.
Survei masukan
Terakhir, isi survei ini untuk memberikan masukan tentang pengalaman Anda dengan codelab ini.