Pintasan Android memberi pengguna metode cepat untuk melakukan tindakan atau mengakses konten dalam aplikasi. Asisten dapat secara proaktif menyarankan pintasan dinamis Android Anda kepada pengguna pada waktu yang relevan, sehingga memungkinkan pengguna menemukan dan memutar ulang fungsi yang diaktifkan suara dengan mudah.
Misalnya, Anda dapat mengirim pintasan untuk setiap catatan yang dibuat pengguna di
aplikasi pencatat. Anda membuat
link dinamis memenuhi syarat untuk ditampilkan di platform Google, seperti Asisten,
dengan menambahkan library Jetpack Integrasi Pintasan Google ke project Anda.
Library ini memungkinkan Asisten mengambil pintasan dinamis yang Anda kirim menggunakan
class ShortcutManagerCompat
, yang merupakan wrapper Jetpack untuk
ShortcutManager
API.
Saat Anda menggunakan library Integrasi Pintasan Google di aplikasi Anda, pintasan
dinamis yang Anda kirim ke Google akan terlihat oleh pengguna sebagai saran pintasan suara
di aplikasi Asisten. Anda dapat mengirim pintasan dinamis dalam jumlah tak terbatas ke
Asisten menggunakan metode pushDynamicShortcut()
dari
library ShortcutManagerCompat
.
Mengonfigurasi project pengembangan Anda
Menambahkan fungsi pintasan dinamis ke aplikasi Anda memerlukan library Integrasi Pintasan Google, yang merupakan library Android Jetpack. Bagian ini menjelaskan cara mengonfigurasi project pengembangan aplikasi Anda untuk menyertakan library ini.
Untuk menambahkan library Jetpack ini dan mengonfigurasi project Anda, ikuti langkah-langkah berikut:
Update file
gradle.properties
Anda untuk menangani library Jetpack:gradle.properties
android.useAndroidX=true # Automatically convert third-party libraries to use AndroidX android.enableJetifier=true
Tambahkan dependensi library Jetpack ke
build.gradle
:app/build.gradle
dependencies { implementation "androidx.core:core:1.6.0" implementation "androidx.core:core-google-shortcuts:1.0.1" ... }
Dalam kode contoh sebelumnya, Anda mencantumkan dua library Jetpack sebagai dependensi. Library
androidx.core:core:1.6.0
berisi classShortcutManagerCompat
, yang Anda gunakan untuk mengirim pintasan dinamis ke Google.androidx.core:core-google-shortcuts:1.0.1
adalah library Integrasi Pintasan Google. Library ini tidak berisi API yang digunakan developer. Dengan menambahkannya sebagai dependensi, Anda memungkinkan Asisten untuk mengambil pintasan dinamis yang Anda kirim menggunakan classShortcutManagerCompat
.
Mengirim pintasan dinamis
Untuk mengirim pintasan dinamis yang memenuhi syarat untuk ditampilkan di Asisten,
Anda terlebih dahulu membuat pintasan menggunakan class
ShortcutInfoCompat.Builder()
.
Kemudian, Anda mengirim pintasan menggunakan
metode ShortcutManagerCompat.pushDynamicShortcut()
. Pintasan dikirim
setiap kali pengguna menyelesaikan tindakan yang relevan di aplikasi Anda. Kode contoh
berikut mendorong pintasan setiap kali pengguna memesan di aplikasi pesan-antar makanan:
ExampleOrderActivity
Kotlin
// Define the dynamic shortcut for a menu item var intent = Intent(context, DisplayOrderActivity::class.java) intent.action = Intent.ACTION_VIEW var shortcutInfo = ShortcutInfoCompat.Builder(context, id) .setShortLabel("Cappuccino") .setLongLabel("Order another cappuccino") .addCapabilityBinding( "actions.intent.ORDER_MENU_ITEM", "menuItem.name", Arrays.asList("cappuccino") ) .setIntent(intent) // Push the shortcut .build() // Push the shortcut ShortcutManagerCompat.pushDynamicShortcut(context, shortcutInfo)
Java
// Define the dynamic shortcut for a menu item Intent intent = new Intent(context, DisplayOrderActivity.class); intent.setAction(Intent.ACTION_VIEW); ShortcutInfoCompat.Builder shortcutInfo = new ShortcutInfoCompat.Builder(context, id) .setShortLabel("Cappuccino") .setLongLabel("Order another cappuccino") .addCapabilityBinding( "actions.intent.ORDER_MENU_ITEM", "menuItem.name", Arrays.asList("cappuccino")) .setIntent(intent) .build(); // Push the shortcut ShortcutManagerCompat.pushDynamicShortcut(context, shortcutInfo);
id
yang direferensikan dalam metode ShortcutInfoCompat.Builder
dalam kode contoh
sebelumnya menentukan shortcutId
objek pintasan yang dihasilkan. id
ini
harus berupa literal string yang unik. Untuk mengetahui detailnya, lihat
dokumentasi Pintasan Android.
Dalam contoh sebelumnya, metode addCapabilityBinding
mengikat pintasan dinamis
ke capability
dari android:name
yang sama yang ditentukan di
shortcuts.xml
. Metode ini memungkinkan Anda mengaitkan pintasan ke
parameter intent bawaan (BII) semantik.
Pintasan dinamis terkadang dikirim tanpa pengaitan parameter BII
tertentu. Saat dipanggil oleh pengguna, Asisten akan memicu intent
yang ditentukan
di pintasan untuk memenuhi tindakan. Contoh berikut menunjukkan pintasan
dinamis tanpa pengaitan parameter:
Kotlin
var intent: Intent = Intent(context, DisplayOrderActivity::class.java) intent.setPackage(this, "com.sample.app") intent.setAction(Intent.ACTION_VIEW) var shortcutInfo: ShortcutInfoCompat = ShortcutInfoCompat.Builder(context, id) .setShortLabel("Order coffee") .setLongLabel("Order a cup of coffee") .addCapabilityBinding("actions.intent.ORDER_MENU_ITEM") .setIntent(intent) .build() ShortcutManagerCompat.pushDynamicShortcut(context, shortcutInfo);
Java
Intent intent = new Intent(context, DisplayOrderActivity.class); intent.setPackage(this, "com.sample.app"); intent.setAction(Intent.ACTION_VIEW); ShortcutInfoCompat shortcutInfo = new ShortcutInfoCompat.Builder(context, id) .setShortLabel("Order coffee") .setLongLabel("Order a cup of coffee") .addCapabilityBinding("actions.intent.ORDER_MENU_ITEM") .setIntent(intent) .build(); ShortcutManagerCompat.pushDynamicShortcut(context, shortcutInfo);
Menguji pintasan dinamis dengan Asisten
Saat Asisten Google berhasil mengambil pintasan dinamis dari aplikasi Anda, pintasan tersebut akan memenuhi syarat untuk muncul sebagai saran Pintasan Suara di aplikasi Asisten Android. Aplikasi Asisten menyarankan pintasan terbaru yang dikirim oleh aplikasi Anda.
Untuk menguji pintasan dinamis dengan Asisten, ikuti langkah-langkah berikut:
- Buat pratinjau Action Aplikasi dan siapkan perangkat pengujian atau emulator untuk tindakan pengujian dengan mengikuti persyaratan penyiapan yang sama seperti untuk Plugin Asisten Google.
- Buka aplikasi Anda dan tentukan pintasan dinamis untuk mendorong. Kemudian selesaikan tindakan. Misalnya, jika Anda mengirim pintasan setiap kali catatan dibuat di aplikasi catatan, buat catatan baru.
- Buka Pintasan di aplikasi Setelan Asisten pada perangkat Anda. Pintasan dinamis Anda akan muncul dalam daftar untuk aplikasi Anda.