Android kısayolları, kullanıcılara bir işlem gerçekleştirmek veya uygulamadaki içeriğe erişmek için hızlı yöntemler sunar. Asistan, Android dinamik kısayollarınızı alakalı zamanlarda kullanıcılara proaktif olarak önerebilir. Böylece kullanıcılar, sesli işlevlerinizi kolayca keşfedip yeniden oynatabilir.
Örneğin, bir kullanıcının
uygulamanız olacaktır. Çok iyi gidiyorsunuz,
Google platformlarında gösterilmeye uygun dinamik bağlantılar (ör. Asistan,
projenize Google Kısayolları Entegrasyonu Jetpack kitaplığını ekleyerek.
Bu kitaplık, Asistan'ın
için bir Jetpack sarmalayıcı olan ShortcutManagerCompat sınıfı
ShortcutManager API.
Uygulamanızda Google Kısayol Entegrasyonu kitaplığını kullandığınızda Google'a gönderdiğiniz dinamik kısayollar, Asistan uygulamasında sesli kısayol önerileri olarak kullanıcılara gösterilir. ShortcutManagerCompat kitaplığının pushDynamicShortcut() yöntemini kullanarak Asistan'a sınırsız sayıda dinamik kısayol gönderebilirsiniz.
Geliştirme projenizi yapılandırma
Uygulamanıza dinamik kısayollar işlevi eklemek için Android Jetpack kitaplığı olan Google Kısayolları Entegrasyonu kitaplığı. Bu bölümde, uygulama geliştirme projenizi aşağıdakileri içerecek şekilde nasıl yapılandıracağınız açıklanmaktadır: bu kitaplıktan faydalanabilirsiniz.
Bu Jetpack kitaplığını eklemek ve projenizi yapılandırmak için aşağıdaki adımları uygulayın:
gradle.propertiesdosyanızı Jetpack kitaplıklarını kullanacak şekilde güncelleyin:gradle.properties
android.useAndroidX=true # Automatically convert third-party libraries to use AndroidX android.enableJetifier=trueJetpack kitaplığı bağımlılıkları
build.gradledosyanıza ekleyin:app/build.gradle
dependencies { implementation "androidx.core:core:1.6.0" implementation "androidx.core:core-google-shortcuts:1.0.1" ... }Önceki örnek kodda, iki Jetpack kitaplığını bağımlılık olarak listelediniz.
androidx.core:core:1.6.0kitaplığı, dinamik kısayolları Google'a göndermek için kullandığınızShortcutManagerCompatsınıfını içerir.androidx.core:core-google-shortcuts:1.0.1, Google Kısayol Entegrasyonu kitaplığıdır. Bu kitaplıkta geliştiriciye yönelik içerik yok API'ye gidin. Bu sınıfı bağımlı olarak ekleyerek Asistan'ınShortcutManagerCompatsınıfını kullanarak gönderdiğiniz dinamik kısayolları almasını sağlarsınız.
Push dinamik kısayolları
Asistan'da gösterilmeye uygun dinamik kısayolları göndermek için öncelikle ShortcutInfoCompat.Builder() sınıfını kullanarak kısayolu oluşturun.
Ardından kısayolu kullanarak
ShortcutManagerCompat.pushDynamicShortcut() yöntemini çağırın. Kullanıcılar uygulamanızda alakalı bir işlem tamamladığında kısayollar yayınlanır. Aşağıdaki örnek kod, kullanıcı notlar ve listeler uygulamasında her liste oluşturduğunda bir kısayol yayınlar.
ÖrnekSipariş Etkinliği
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);
Yukarıdaki ShortcutInfoCompat.Builder yönteminde referans verilen id
örnek kod, sonuç olarak elde edilen kısayol nesnesinin shortcutId öğesini tanımlar. Bu id
benzersiz bir değişmez dize değeri olmalıdır. Ayrıntılar için Android kısayolları belgelerine bakın.
Yukarıdaki örnekte addCapabilityBinding yöntemi,
içinde tanımlanmış aynı android:name öğesinin capability kısayolu
shortcuts.xml. Bu yöntem, kısayolu semantik bir yerleşik intent (BII) parametresiyle ilişkilendirmenize olanak tanır.
Dinamik kısayollar bazen belirli bir BII parametresi ilişkilendirmesi olmadan gönderilir. Asistan, kullanıcı tarafından çağrıldığında, tanımlanan intent öğesini tetikler
tuşuna basarak işlemi tamamlayabilirsiniz. Aşağıdaki örnekte, parametre ilişkilendirmesi olmayan dinamik bir kısayol gösterilmektedir:
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);
Asistan ile dinamik kısayolları test etme
Google Asistan, bu kısayol, Asistan Android uygulaması. Asistan uygulaması en son kısayolları önerir aktarılmıştır.
Asistan ile dinamik kısayollarınızı test etmek için aşağıdaki adımları uygulayın:
- Uygulama İşlemlerinizin önizlemesini oluşturun ve Google Asistan eklentisinde olduğu gibi aynı kurulum koşullarını uygulayarak test cihazınızı veya emülatörünüze işlemleri test etmek için hazırlayın.
- Uygulamanızı açın ve yayınlamak için dinamik bir kısayol tanımlayın. Ardından bir işlem tamamlayın. Örneğin, not alma uygulamanızda oluşturulur, ardından yeni bir not oluşturun.
- Cihazınızdaki Asistan Ayarları uygulamasında Kısayollar'ı açın. Sizin dinamik kısayol uygulamanızın listesinde görünür.