Funktionen zu Verknüpfungen hinzufügen

Mit Funktionen in shortcuts.xml können Sie die Arten von Aktionen deklarieren, die Nutzer ausführen können um Ihre App zu starten und eine bestimmte Aufgabe direkt auszuführen.

Google Assistant App Actions nutzen beispielsweise Funktionen, damit Entwickler Sie können In-App-Funktionen auf integrierte Intents (BIIs) ausweiten, sodass Nutzer und diese Funktionen per Sprachbefehl steuern. Eine Funktion besteht aus dem Namen der Aktion und einem intent, das auf das Ziel in Ihrer App ausgerichtet ist, das die Nutzerabsicht erfüllt.

Definieren Sie Funktionen in der Datei „shortcuts.xml“

Sie definieren capability-Elemente in einer shortcuts.xml-Ressourcendatei in Ihrem Android-App-Entwicklungsprojekt. So definieren Sie ein capability-Element:

  1. Erstellen Sie eine shortcuts.xml-Ressource. Folgen Sie dazu der Anleitung unter Statische Verknüpfungen erstellen.
  2. Nehmen Sie die folgenden erforderlichen Informationen in Ihre Fähigkeiten auf:

    • Funktionsname:Aktion, die Ihre App unterstützen soll. Weitere Informationen finden Sie unter der Komponentendokumentation für die Funktion, die die Funktion erfordert Definitionen. Für die Sprachbefehle von App-Aktionen wird der BII Action ID für die Namen der Funktionen verwendet. Weitere Informationen finden Sie in der BII-Referenz. Beispiel: Der BII GET_THING listet seine Action ID als actions.intent.GET_THING auf.

    • App-Ziel: Das Ziel in Ihrer App, das durch die Aktion aufgerufen wird, um die Nutzeranfrage zu erfüllen. App-Ziele mit intent-Elementen definieren in capability verschachtelt.

    • Parameterzuordnungen: Jede intent kann Parameter enthalten, die als extra-Daten der Absicht übergeben werden. Beispiel: Jeder App Actions-BII enthält Felder, die Informationen darstellen, die Benutzer häufig in Abfragen angeben, die den BII auslösen.

Das folgende Beispiel zeigt eine Funktionsdefinition in shortcuts.xml. für actions.intent.START_EXERCISE, einen BII, mit dem Nutzer gesprochene Inhalte verwenden können Befehle mit Assistant, um ein Training in einer Fitness-App zu starten:

<shortcuts xmlns:android="http://schemas.android.com/apk/res/android">
  <capability android:name="actions.intent.START_EXERCISE">
    <intent
      android:action="android.intent.action.VIEW"
      android:targetPackage="com.example.sampleApp"
      android:targetClass="com.example.sampleApp.ExerciseActivity">
      <parameter
        android:name="exercise.name"
        android:key="exerciseType"/>
    </intent>
  </capability>
</shortcuts>

Im vorherigen Beispiel bezieht sich das <capability>-Attribut android:name auf den BII START_EXERCISE. Wenn ein Nutzer diesen BII aufruft, indem er Assistant fragt: „Hey Google, starte einen Lauf in ExampleApp“ angezeigt wird, führt Assistant die Nutzeranfrage mit Informationen, die im verschachtelten intent-Element angegeben sind. Die intent in diesem Beispiel definiert die folgenden Details:

  • Mit android:targetPackage wird das Zielanwendungspaket dafür festgelegt. die Nutzerabsicht verstehen.
  • Das Feld android:targetClass gibt die Zielaktivität an: com.example.sampleApp.ExerciseActivity.
  • Der Intent „parameter“ deklariert die Unterstützung eines BII-Parameters exercise.name und wie der Parameterwert übergeben wird (erfasst) vom Nutzer – als zusätzliche Daten in intent.

Verknüpfungen mit einer Funktion verknüpfen

Nachdem Sie eine Funktion definiert haben, können Sie ihre Funktionalität erweitern, indem Sie statische oder dynamische Tastenkombinationen ein. Verknüpfungen mit einem capability hängt von der implementierten Funktion und den Wörtern ab, Anforderung des Nutzers. Beispiel: Wenn ein Nutzer einen Lauf in deinem Fitness-Tracking startet indem du Assistant sagst: „Hey Google, starte einen Lauf in ExampleApp.“ Assistant kann eine Verknüpfung verwenden, um eine Instanz eines capability zu starten, die eine gültige Trainingsentität „laufen“ für den exercise.name-Parameter definiert.

Weitere Informationen zum Verknüpfen von Verknüpfungen mit App Actions finden Sie unter App Actions Übersicht über Aktionen