ショートカットに機能を追加する

shortcuts.xml の機能を使用すると、ユーザーが実行できるアクションの種類を宣言できます 特定のタスクを直接実行できます

たとえば、Google アシスタントの App Actions は、 アプリ内機能を組み込みインテント(BII)に拡張して、ユーザーが それらの機能を音声コマンドで操作できます。ケーパビリティは アクションの名前と、アプリ内のデスティネーションをターゲットとする intent ユーザーのインテントを解決できます。

shortcuts.xml にケーパビリティを定義する

Android アプリ開発プロジェクトの shortcuts.xml リソース ファイルに capability 要素を定義します。capability 要素を定義��る手順は次のとおりです。 次のとおりです。

  1. 作成の手順で shortcuts.xml リソースを作成します。 静的ショートカットをご覧ください。
  2. 能力には以下の必須情報を含めてください。

    • 機能名: アプリでサポートするアクションを指定します。詳しくは、 機能を必要とする機能のコンポーネント ドキュメント あります。App Actions の音声対応コマンドは BII Action ID を使用する 機能名については、BII リファレンスをご覧ください。たとえば BII「GET_THING」の Action IDactions.intent.GET_THING と表示されています。

    • アプリのデスティネーション: アクションを起動するアプリ内のデスティネーション リクエストを実行しますcapability 内にネストされた intent 要素を使用してアプリ デスティネーションを定義します。

    • パラメータ マッピング:intent には、対応するパラメータを含めることができます。 インテントの extra データとして渡されます。たとえば、各 App Actions BII が ユーザーが頻繁に入力する情報を表すフィールドが BII をトリガーできます

次の例は、shortcuts.xml でのケーパビリティの定義を示しています。 actions.intent.START_EXERCISE は、ユーザーが音声による音声を認識できる BII です フィットネス アプリでワークアウトを開始するには、以下のコマンドをアシスタントでリクエストしてください。

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

上記の例では、<capability> android:name 属性が START_EXERCISE BII を参照しています。ユーザーがアシスタントに「OK Google, ExampleApp でランニングを開始」と話しかけると、アシスタントは intent 要素にネストされた定義情報を使ってユーザーのリクエストに応えます。この例の intent では、次の情報を定義しています。

  • android:targetPackage に、このインテントのターゲット アプリケーション パッケージを設定しています。
  • android:targetClass に、デスティネーション アクティビティ(com.example.sampleApp.ExerciseActivity)を設定しています。
  • インテント parameter で BII パラメータのサポートを宣言する exercise.name と、パラメータ値を渡す方法( (intent の追加データ)として渡されます。

ショートカットとケーパビリティを関連付ける

機能を定義したら、API に関連付けて機能を拡張し、 静的または動的ショートカットと一緒に使用できますショートカットが capability にリンクする仕組み 実装する機能と、使用する実際の単語によって異なります。 受信します。例: ユーザーがフィットネス トラッキングでランニングを開始したとき アシスタントに「OK Google, ExampleApp でランニングを開始」と話しかけます。アシスタント ショートカットを使用して、有効な ID を定義する capability のインスタンスを起動できます。 「run」のエクササイズ エンティティexercise.name パラメータを指定します。

ショートカットを App Actions に関連付ける方法について詳しくは、App Actions の アクションの概要をご覧ください。