Uygulamanızın özelliklerini tanıtmak ve kullanımını kolaylaştırmak için Kullanıcılarınız için Asistan kısayolları. Asistan kısayolları, kısa ve öz ifadelerdir. uygulamanızda işlevleri tetiklemek için söyleyebilecekleri bir ifade.
Asistan kısayolları kullanıcılarınız tarafından manuel olarak oluşturulabilir ancak uygulama içi promosyon SDK'sı, Asistan kısayollarını proaktif olarak önermenize ve uygulamanıza olanak tanır. Kısayollar önererek kullanıcılarınıza net ve basit ek çaba gerekmeden uygulamanızda favori aktivitelerine giden yollar nasıl yapılacağını göstereceğim.
Örneğin, bir kullanıcı müzik uygulamanızda "ağır metal antrenmanı" araması yaparsa gelecekte doğrudan bu arama sonuçlarına giden bir Asistan kısayolu önerebilirsiniz. Kısayol önerdiğinizde, uygulamanızda aşağıdakileri yapan bir istem görünür kısayol için önerilen ifadeyi görüntüler ve kullanıcıya kısayolun oluşturabilirsiniz.
Bu örnekte, "heavy metal'imi başlat" ifadesini öneriyorsunuz. anlamına gelir." Kullanıcı öneriyi kabul eder ve ardından "Ok Google, heavy metal antrenmanımı başlat" diyerek kısayolu başlatabilir.
Uygulamanızın kitlesini büyütme yöntemleri hakkında daha fazla bilgi için Uygulama içi işlemlerle uygulamanızı büyütme başlıklı makaleyi inceleyin.
Uygulama İçi Tanıtım SDK'sı aşağıdaki yöntemleri sağlar:
lookupShortcut
: Önermek istediğiniz kısayolun mevcut olup olmadığını kontrol eder. Yöntem, kısayolu engelleyen sorunları da kontrol eder bu sorunun cevabını öğrenebilirsiniz. Kısayol oluşturulamıyorsalookupShortcut
nedenini döndürür.createShortcutSuggestionIntent
: Aşağıdaki işlemler için kullanabileceğiniz bir intent döndürür: kullanıcıdan önerilen kısayolu oluşturmasını isteyin.createShortcutSettingsIntent
:, taşımak için kullanabileceğiniz bir intent döndürür uygulamanızın Asistan Kısayol ayarlarına erişmesine olanak tanır.
Ön koşullar ve sınırlamalar
Bu bölümde, önerilerin ön koşulları ve koşulları açıklanmaktadır. ve karşılaşabileceğiniz sınırlamalardır.
Geliştirme ön koşulları
Önerilerin kullanılabilmesi için geliştirme ortamınızın aşağıdaki ön koşulları karşılaması gerekir.
Android uygulamanızı Uygulama İşlemleri'ni kullanacak şekilde genişletin.
Manifest dosyanızdaki
<queries>
etiketinecom.google.android.googlequicksearchbox
ekleyin. Örnek:<manifest ...> <queries> <package android:name="com.google.android.googlequicksearchbox" /> </queries> ... </manifest>
Uygulamalarınızı yayınlamak için Android App Bundle'ı kullanın.
Cihaz gereksinimleri
Önerilerinizi bir cihazda test etmek için cihazınızda aşağıdakiler yüklü olmalıdır.
Son sürüm Google uygulaması
Android 6.0 (API düzeyi 23) veya sonraki sürümler
Bilinen sınırlamalar
Öneriler yalnızca İngilizce olarak desteklenir. Kullanıcıların önerilerinizi görebilmesi için cihazlarındaki Asistan dilini İngilizce olarak ayarlamaları gerekir.
Önerileri uygulama
Önerilerin uygulanabilmesi için build.gradle
dosyanızı güncellemeniz, öneri istemcisini ayarlamanız ve ardından kullanıcılara sunmak istediğiniz önerileri tanımlamanız gerekir.
Kitaplık bağımlılığını
build.gradle
dosyanıza ekleyin.dependencies { ... implementation "com.google.assistant.appactions:suggestions:1.0.0" }
Bir
AssistantShortcutSuggestionsClient
örneğini tanımlayın.Kotlin
val shortcutsClient = AssistantShortcutSuggestionsClient.builder() .setContext(CONTEXT: Context) .setVerifyIntents(VERIFY_INTENTS: Boolean) .setCustomExecutor(CUSTOM_EXECUTOR: Object) .build()
Java
AssistantShortcutSuggestionsClient shortcutsClient = AssistantShortcutSuggestionsClient.builder() .setContext(CONTEXT: Context) .setVerifyIntents(VERIFY_INTENTS: Boolean) .setCustomExecutor(CUSTOM_EXECUTOR: Object) .build();
Bu örnekte:
CONTEXT
(zorunlu), uygulama bağlamıdır.VERIFY_INTENTS
(zorunlu), kullanıcılara kısayollar önerirken oluşturulan her intent'in doğrulanıp doğrulanmayacağını belirler.true
olduğunda amaçlarAssistantShortcutSuggestionsClient
tarafından oluşturulmuştur. Eğer intent geçersiz, bir istisna döndürüldü.CUSTOM_EXECUTOR
(isteğe bağlı), asenkron görevleri çalıştırmak için özel bir yürütücüdür. Sağlanmazsa SDK, tek iş parçacıklı yürütücüsü bulunur.
Hangi kısayolu kullanmak istediğinizi belirlemek için
lookupShortcut
yöntemini kullanın önerinin geçerli olup olmadığını ve isteğe bağlı olarak kısayolun zaten mevcut olup olmadığını kontrol etmenizi öneririz.Uygulama kısayolu oluşturun. Kısayol amacı, bir kısayol kullanabilirsiniz. Aşağıdaki örnek bir egzersiz başlatmak için kısayol oluşturma amacı oluşturuyor.
Kotlin
val exercise = mapOf( "@type" to "Exercise", "@context" to "http://schema.googleapis.com", "name" to "Running", ) val appShortcutIntent = AppShortcutIntent.builder() .setIntentName("actions.intent.START_EXERCISE") .setPackageName("my.app.package") .setIntentParamName("exercise") .setIntentParamValue(exercise) .build()
Java
Map<String, Object> exercise = new HashMap<>(); exercise.put("@type", "Exercise"); menuItem.put("@context", "http://schema.googleapis.com"); menuItem.put("name", "Running"); AppShortcutIntent appShortcutIntent = AppShortcutIntent.builder() .setIntentName("actions.intent.START_EXERCISE") .setPackageName("my.app.package") .setIntentParamName("exercise") .setIntentParamValue(exercise) .build();
Kısayol amacını
lookupShortcut
yöntemine iletin.Kotlin
val result = shortcutsClient.lookupShortcut(appShortcutIntent).await() if (!result.isShortcutPresent) { // App can suggest creating a shortcut } else { // App can remind the user that they have a shortcut for this app action }
Java
shortcutsClient.lookupShortcut(appShortcutIntent) .addOnSuccessListener(shortcutLookupResult -> { if (!shortcutLookupResult.isShortcutPresent()) { // App can suggest creating a shortcut } else { // App can remind the user that they have a shortcut for this app action } }) .addOnFailureListener(e -> Log.e(TAG, "Shortcut lookup failed", e));
Kısayol intent'ini kullanarak öneriyi oluşturun. iki yöntemden birini kullanabilirsiniz: kullanabileceğiniz üç şey olduğunu unutmayın:
createShortcutSuggestionIntent
: istediğiniz bir Android niyetini kısayol önerisi etkinliğini kullanmak için kullanabileceğiniz uygulamasını indirin.Kotlin
val exerciseShortcut = AppShortcutSuggestion.builder() .setAppShortcutIntent(appShortcutIntent) .setCommand(PHRASE: String) .build() val intent = shortcutsClient.createShortcutSuggestionIntent(exerciseShortcut).await() application.startActivity(intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK))
Java
AppShortcutSuggestion exerciseShortcut = AppShortcutSuggestion.builder() .setAppShortcutIntent(appShortcutIntent) .setCommand(PHRASE: String) .build(); shortcutsClient.createShortcutSuggestionIntent(exerciseShortcut) .addOnSuccessListener(intent -> getApplication().startActivity( intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)); ) .addOnFailureListener(e -> Log.e(TAG, "Failed to get shortcut suggestion intent", e); );
Bu örnekte PHRASE, kullanıcıya kısayol olarak önermek istediğiniz ifadedir. Örneğin, kullanıcının kısayol olarak "Ok Google, koşu başlat" demek,
"start a run"
ile PHRASE.Kotlin
val exerciseShortcut = AppShortcutSuggestion.builder() .setAppShortcutIntent(appShortcutIntent) .setCommand("start a run") .build()
Java
AppShortcutSuggestion exerciseShortcut = AppShortcutSuggestion.builder() .setAppShortcutIntent(appShortcutIntent) .setCommand("start a run") .build();
createShortcutSettingsIntent
:, hareket eden bir Android niyeti döndürür. kullanıcıyı Asistan uygulamasındaki kısayol ayarları arayüzüne yönlendirebilirsiniz.Kotlin
val intent = shortcutsClient.createShortcutSettingsIntent().await() application.startActivity(intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK))
Java
shortcutsClient.createShortcutSettingsIntent() .addOnSuccessListener(intent -> getApplication().startActivity( intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)); ) .addOnFailureListener(e -> Log.e(TAG, "Failed to get shortcut settings intent", e); );
startActivity
numaralı telefonu arayın kullanarak erişebilirsiniz.
Sorun giderme önerileri
Bu bölümde, kısayol önerirken karşılaşabileceğiniz sorunlar ve istisnalar listelenmiştir.
"GoogleKurulumDesteklenmeyenİstisna: Hizmete bağlanılamıyor"
Kaynak:
paket görünürlüğü filtreleme
"GoogleInstallationUnsupportedException
: Hizmete bağlanılamıyor" şu tarihte gerçekleşebilir:
Android 11 ve sonraki sürümler. com.google.android.googlequicksearchbox
etiketinin manifest dosyanızdaki <queries>
etiketine dahil edildiğinden emin olun:
<manifest ...>
<queries>
<package android:name="com.google.android.googlequicksearchbox" />
</queries>
...
</manifest>
"APK imzası doğrulanamadı"
Üretim uygulamanızı uygulama paketi olarak göndermezseniz aşağıdaki hata oluşabilir:
Failed to verify the APK signature. If this is a development build, please
make sure to update the preview of your app in App Actions Test Tool.
Uygulamanızı Android App Bundle olarak gönderdiğinizden emin olun.
"Kullanıcı kısayolları alınamadı"
"Kullanıcı kısayolları alınamadı" hata mesajı, cihaza kısa süre önce bir hesap eklediyseniz ve yeni hesabın kısayol verileri henüz cihazda önbelleğe alınmadıysa gösterilebilir.
Cihazdaki kısayol verilerini senkronize etmek için bir Asistan kısayolu ekleyin veya silin kullanarak erişebilirsiniz.
Kısayol oluşturma etkinliği, içerik gösterilmeden hemen kapanır
Uygulama İşlemleri Test Aracı'nı kullanarak bir önizleme oluşturmazsanız veya önizlemenin süresi dolarsa kısayol oluşturma etkinliği herhangi bir içerik göstermeden kapanabilir. Önizlemenizi güncelleyip tekrar deneyin.