Mit Android-Tastenkombinationen können Nutzer um in einer App eine Aktion auszuführen oder auf Inhalte zuzugreifen. Assistant kann Nutzern unter folgendem Link proaktiv deine dynamischen Verknüpfungen für Android vorschlagen: relevanten Zeiten angezeigt werden, sodass die Nutzer Ihre sprachgesteuerte Funktionen nutzen.
Sie können beispielsweise eine Verknüpfung für jede Notiz erstellen, die ein Nutzer in
Ihre Notizen-App. Sie machen
dynamische Links, die auf Google-Plattformen wie Assistant
indem Sie Ihrem Projekt die Google Shortcuts Integration Jetpack-Bibliothek hinzufügen.
Mit dieser Bibliothek kann Assistant dynamische Verknüpfungen berücksichtigen, die Sie mit der Klasse ShortcutManagerCompat
senden. Dabei handelt es sich um einen Jetpack-Wrapper für die ShortcutManager
API.
Wenn Sie die Bibliothek „Google Shortcuts Integration“ in Ihrer App verwenden, sind dynamische Verknüpfungen, die Sie an Google senden, für Nutzer als Vorschläge für Sprachverknüpfungen in der Assistant App sichtbar. Mit der Methode pushDynamicShortcut()
der Bibliothek ShortcutManagerCompat
können Sie eine unbegrenzte Anzahl von dynamischen Verknüpfungen an Assistant senden.
Entwicklungsprojekt konfigurieren
Für das Hinzufügen dynamischer Verknüpfungen zu deiner App ist die Google Shortcuts Integration Library, eine Android Jetpack-Bibliothek. In diesem Abschnitt wird beschrieben, wie Sie Ihr App-Entwicklungsprojekt so konfigurieren, dass es Folgendes enthält: für diese Bibliothek.
So fügen Sie diese Jetpack-Bibliothek hinzu und konfigurieren Ihr Projekt:
Aktualisieren Sie die Datei
gradle.properties
so, dass Jetpack-Bibliotheken verarbeitet werden:gradle.properties
android.useAndroidX=true # Automatically convert third-party libraries to use AndroidX android.enableJetifier=true
Fügen Sie die Abhängigkeiten der Jetpack-Bibliothek zu
build.gradle
hinzu:app/build.gradle
dependencies { implementation "androidx.core:core:1.6.0" implementation "androidx.core:core-google-shortcuts:1.0.1" ... }
Im obigen Beispielcode listen Sie zwei Jetpack-Bibliotheken auf: Abhängigkeiten. Die
androidx.core:core:1.6.0
-Bibliothek enthält die KlasseShortcutManagerCompat
, mit der Sie dynamische Verknüpfungen senden können Google.androidx.core:core-google-shortcuts:1.0.1
steht für Google Shortcuts Integration Library. Diese Bibliothek enthält keine für Entwickler der API erstellen. Wenn Sie sie als Abhängigkeit hinzufügen, kann Assistant die dynamischen Verknüpfungen übernehmen, die Sie mit derShortcutManagerCompat
-Klasse senden.
Dynamische Tastenkombinationen senden
Wenn Sie dynamische Verknüpfungen senden möchten, die in Assistant angezeigt werden können, erstellen Sie die Verknüpfung zuerst mit der Klasse ShortcutInfoCompat.Builder()
.
Anschließend drücken Sie die Tastenkombination mit der
ShortcutManagerCompat.pushDynamicShortcut()
-Methode. Verknüpfungen werden gesendet, wenn ein Nutzer eine relevante Aktion in Ihrer App ausführt. Im folgenden Beispielcode wird jedes Mal eine Verknüpfung gesendet, wenn ein Nutzer in einer Notizen- und Listen-App eine Liste erstellt.
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);
Die id
, auf die im vorherigen Schritt in der Methode ShortcutInfoCompat.Builder
verwiesen wird
Im Beispielcode wird die shortcutId
des resultierenden Verknüpfungsobjekts definiert. Dieses id
muss ein eindeutiges Stringliteral sein. Weitere Informationen finden Sie in der
Dokumentation zu Android-Verknüpfungen
Im vorherigen Beispiel bindet die Methode addCapabilityBinding
das dynamische
Verknüpfung zu einer capability
derselben android:name
, die in
shortcuts.xml
. Mit dieser Methode können Sie die Verknüpfung mit einem
semantischen integrierten Intent (BII)-Parameter.
Dynamische Verknüpfungen werden manchmal ohne einen bestimmten BII-Parameter gesendet
Verknüpfung. Wenn Assistant vom Nutzer aufgerufen wird, löst er das festgelegte intent
aus
in der Tastenkombination ein, um die Aktion auszuführen. Das folgende Beispiel zeigt einen dynamischen Verknüpfungs-Shortcut ohne Parameterverknüpfung:
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);
Dynamische Verknüpfungen mit Assistant testen
Wenn Google Assistant eine dynamische Verknüpfung von Ihrem kann die Verknüpfung als Vorschlag für Sprachkürzel in der Assistant-App für Android. Die Assistant App schlägt die neuesten Kurzbefehle vor die von Ihrer App bereitgestellt werden.
So testen Sie dynamische Verknüpfungen mit Assistant:
- Erstelle eine Vorschau deiner App Actions und bereite dein Testgerät oder Emulator für das Testen von Aktionen. Einrichtungsanforderungen wie für das Google Assistant-Plug-in zu berücksichtigen.
- Öffne deine App und definiere eine dynamische Verknüpfung, die gesendet werden soll. Führen Sie dann eine Aktion aus. Wenn Sie z. B. immer dann eine Tastenkombination drücken, Notiz wird in Ihrer Notizen-App erstellt und anschließend eine neue erstellt.
- Öffne auf deinem Gerät in der App Assistant-Einstellungen die Option Verknüpfungen. Ihr dynamische Verknüpfung in der Liste für Ihre App angezeigt.