Pintasan Android memberi pengguna metode cepat untuk melakukan tindakan atau mengakses konten di aplikasi. Asisten dapat menyarankan pintasan dinamis Android Anda secara proaktif kepada pengguna pada waktu yang relevan, sehingga memungkinkan pengguna menemukan dan memutar ulang fungsi yang diaktifkan suara dengan mudah.
Misalnya, Anda dapat mendorong pintasan untuk setiap catatan yang dibuat pengguna di
aplikasi pencatat Anda. 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 dorong menggunakan
Class ShortcutManagerCompat
, yang merupakan wrapper Jetpack untuk
API ShortcutManager
.
Saat menggunakan library Integrasi Pintasan Google di aplikasi, 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 mengirimkan 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 menyerap pintasan dinamis yang Anda kirim menggunakan classShortcutManagerCompat
.
Mengirim pintasan dinamis
Untuk mendorong pintasan dinamis yang memenuhi syarat untuk ditampilkan di Asisten,
pertama-tama, Anda membuat pintasan menggunakan ShortcutInfoCompat.Builder()
.
Anda kemudian mendorong pintasan menggunakan
Metode ShortcutManagerCompat.pushDynamicShortcut()
. Pintasan dikirim
setiap kali pengguna menyelesaikan tindakan yang relevan di aplikasi Anda. Contoh berikut
kode mendorong pintasan setiap kali pengguna membuat daftar dalam aplikasi catatan dan daftar.
ExampleOrderActivity
Kotlin
// Define the dynamic shortcut for an item var intent = Intent(context, DisplayOrderActivity::class.java) intent.action = Intent.ACTION_VIEW var shortcutInfo = ShortcutInfoCompat.Builder(context, id) .setShortLabel("Running") .setLongLabel("Start running") .addCapabilityBinding( "actions.intent.CREATE_ITEM_LIST", "itemList.name", Arrays.asList("My First List") ) .setIntent(intent) // Push the shortcut .build() // Push the shortcut ShortcutManagerCompat.pushDynamicShortcut(context, shortcutInfo)
Java
// Define the dynamic shortcut for an item Intent intent = new Intent(context, DisplayOrderActivity.class); intent.setAction(Intent.ACTION_VIEW); ShortcutInfoCompat.Builder shortcutInfo = new ShortcutInfoCompat.Builder(context, id) .setShortLabel("Running") .setLongLabel("Start running") .addCapabilityBinding( "actions.intent.CREATE_ITEM_LIST", "itemList.name", Arrays.asList("My First List")) .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("Create a list") .setLongLabel("Create a list") .addCapabilityBinding("actions.intent.CREATE_ITEM_LIST") .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("Create a list") .setLongLabel("Create a list") .addCapabilityBinding("actions.intent.CREATE_ITEM_LIST") .setIntent(intent) .build(); ShortcutManagerCompat.pushDynamicShortcut(context, shortcutInfo);
Menguji pintasan dinamis dengan Asisten
Saat Asisten Google berhasil mengambil pintasan dinamis dari aplikasi, pintasan memenuhi syarat untuk muncul sebagai saran Pintasan Suara di aplikasi Android Asisten. Aplikasi Asisten menyarankan pintasan terbaru didorong oleh aplikasi Anda.
Untuk menguji pintasan dinamis dengan Asisten, ikuti langkah-langkah berikut:
- Buat pratinjau Action Aplikasi dan siapkan perangkat pengujian atau emulator untuk menguji tindakan dengan mengikuti persyaratan penyiapan yang sama seperti untuk Plugin Asisten Google.
- Buka aplikasi dan tentukan pintasan dinamis yang akan dikirim. 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.