Ajouter des fonctionnalités aux raccourcis

Les fonctionnalités de shortcuts.xml vous permettent de déclarer les types d'actions que les utilisateurs peuvent effectuer suivre pour lancer votre application et effectuer directement une tâche spécifique.

Par exemple, les actions dans l'application de l'Assistant Google permettent aux développeurs étendre les fonctionnalités de l'application aux intents intégrés, ce qui permet aux utilisateurs d'activer et les contrôler à l'aide de commandes vocales. Une capacité est constituée nom de l'action et un intent ciblant la destination dans votre application qui résout l'intent de l'utilisateur.

Définir les fonctionnalités dans le fichier shortcuts.xml

Vous définissez des éléments capability dans un fichier de ressources shortcuts.xml dans votre Projet de développement d'applications Android. Pour définir un élément capability, procédez comme suit : suivantes:

  1. Créez une ressource shortcuts.xml en suivant les instructions de la section Créer des raccourcis statiques.
  2. Incluez les informations obligatoires suivantes dans votre fonctionnalité:

    • Capability name (Nom de la fonctionnalité) : action que votre application doit accepter. Consultez la documentation sur les composants de la fonctionnalité qui nécessite une capacité et définitions. Les commandes à commande vocale des actions dans les applications utilisent l'intent intégré Action ID pour connaître les noms des fonctionnalités disponibles dans la documentation de référence sur les intents intégrés. Par exemple : l'intent intégré GET_THING indique que Action ID est actions.intent.GET_THING.

    • App destination (Destination de l'application) : destination de votre application vers laquelle l'action se lance. pour répondre à la requête de l'utilisateur. Définir les destinations de l'application à l'aide d'éléments intent imbriquées dans les capability.

    • Mappages de paramètres:chaque intent peut contenir des paramètres à utiliser transmis en tant que données extra de l'intent. Par exemple, chaque intent intégré d'action dans les applications comprend des champs représentant les informations que les utilisateurs fournissent souvent dans les requêtes pour déclencher l'intent intégré.

L'exemple suivant illustre une définition de capacité dans shortcuts.xml pour actions.intent.START_EXERCISE, un intent intégré qui permet aux utilisateurs d'utiliser la reconnaissance vocale avec l'Assistant pour commencer un entraînement dans une application de fitness:

<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>

Dans l'exemple précédent, l'attribut android:name <capability> fait référence à l'intent intégré START_EXERCISE. Si un utilisateur appelle cet intent intégré en demandant à l'Assistant : "Hey Google, lance une exécution dans ExampleApp", l'Assistant répond à la requête de l'utilisateur en utilisant les informations fournies dans l'élément intent imbriqué. intent dans cet exemple définit les informations suivantes:

  • android:targetPackage définit le package d'application cible pour l'intention.
  • Le champ android:targetClass spécifie l'activité de destination: com.example.sampleApp.ExerciseActivity
  • L'intent parameter déclare la compatibilité avec un paramètre d'intent intégré. exercise.name et comment transmettre la valeur de paramètre collectée de l'utilisateur, en tant que données supplémentaires dans intent.

Associer des raccourcis à une fonctionnalité

Une fois que vous avez défini une capacité, vous pouvez étendre ses fonctionnalités en associant des raccourcis statiques ou dynamiques. Comment les raccourcis sont-ils associés à un capability ? dépend de la fonctionnalité implémentée et des mots inclus dans une à la demande de l'utilisateur. Par exemple, lorsqu'un utilisateur commence à courir dans votre suivi de remise en forme application en demandant à l'Assistant : "Hey Google, démarre une course à pied dans ExempleAppli". Assistant Vous pouvez utiliser un raccourci pour lancer une instance de capability qui définit une valeur valide Entité d'exercice de "course" pour le paramètre exercise.name.

Pour en savoir plus sur l'association de raccourcis aux actions dans les applications, consultez la section Présentation des actions