ADBを使用したFire TVランチャー統合のテスト(任意)
アプリとFire TVランチャーを統合した後、Android Debug Bridge(ADB)を使用して、アプリがサインインインテントや再生インテントに正しく応答するかをテストできます。
- このテストオプションを使用すべき場合
- プロセスの概要
- 手順A: ADBを使用してアプリをFire TVデバイスにインストールする
- 手順B: アプリへのサインインリクエストをテストする
- 手順C: アプリへの再生リクエストをテストする
このテストオプションを使用すべき場合
このテストオプションは、アプリの開発がまだ完了していない段階や、ランチャーからのインテントに応答するコードを実装する前に使用してください(アプリにFire TVランチャーを統合するを参照)。アプリのランチャー統合のテストには、Fire TVデバイスが必要となります。
まだアプリが完成していない場合、またはインテントに応答するコードをまだ実装していない場合は、テストアプリの機能を使用してランチャー統合のテストを行ってください。統合テストアプリを使用したFire TVランチャー統合のテストを参照してください。
プロセスの概要
ADBを使用したFire TVランチャー統合のテストは、主に次のようなプロセスに沿って行います。
手順A: ADBを使用してアプリをFire TVデバイスにインストールする
アプリをテストする前に、アプリをFire TVデバイスにインストールする必要があります。次の手順に従ってアプリをFire TVデバイスにインストールします。
- ADBを使用してFire TVデバイスを開発用コンピューターに接続します(ADBを使用してFire TVに接続する方法を参照)。
- テストのためにアプリをデバイスにサイドロードします(アプリをインストールして実行する方法を参照)。
このページのすべてのadb
コマンドでは、Androidアクティビティマネージャー(am
)を使用してインテントをアプリに送信します。am
の構文とオプションの詳細については、Androidの開発者向けウェブサイトのAndroid Debug Bridgeを参照してください。
手順B: アプリへのサインインリクエストをテストする
Fire TVランチャーからのサインインリクエストには、リクエスト自体に加えて、リクエストされたコンテンツへの参照が含まれています。このため、ユーザーがサインインするとすぐにコンテンツが再生されます。コンテンツ参照は、実装によって、URIである場合と、データエクストラの名前と値のペアである場合があります。
次の手順に従ってサインインリクエストをテストします。
- ADBを使用してFire TVデバイスに接続したコンピューターで、コマンドラインにアクセスできるようにターミナルウィンドウを開きます。
- シェルのプロンプトで、以下のコマンドのいずれかを入力します。
-
コンテンツがURIで指定されている場合は、以下を入力します。
adb shell am start -a <signin_intent_action> -n <signin_component> -f <signin_intent_flags> -d <content_uri>
-
コンテンツがデータエクストラで指定されている場合は、以下を入力します。
adb shell am start -a <signin_intent_action> -n <signin_component> -f <signin_intent_flags> -e <data_extra_name> <content_id>
-
コマンドオプション
次の表に、上の2つのコマンドで使用できるオプションを示します。山かっこ<>
内のテキストはアプリに応じた値に置き換えてください。
コマンド | 説明 |
---|---|
-a <signin_intent_action> |
SIGNIN_INTENT_ACTION エクストラから取得されるサインインインテントアクション。例: com.yourcompany.player.SIGN_IN |
-n <signin_component> |
サインインアクティビティの完全なコンポーネント名。パッケージ名とクラス名がスラッシュで区切られています。これらの値はそれぞれ、SIGNIN_INTENT_PACKAGE エクストラとSIGNIN_INTENT_CLASS エクストラから取得されます。例: com.yourcompany.player/com.yourcompany.player.MainActivity |
-f <signin_intent_flags> |
SIGNIN_INTENT_FLAGS エクストラで10進値として指定し、デフォルトのランチャーフラグと結合したインテントフラグ。デフォルトでは、ランチャーは以下のフラグを送信します。 • Intent.FLAG_ACTIVITY_NEW_TASK • Intent.FLAG_INCLUDE_STOPPED_PACKAGES • Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED 10進値の例: 270532640 |
-d <content_uri> |
コンテンツへのリンクがURIで指定されている場合はそのURI。オプション-dを使用する場合は、オプション-e を使用しないでください。 |
-e <data_extra_name> <content_id> |
コンテンツへのリンクがURI以外の方法で指定されている場合は、そのコンテンツのキーと値のペア。キーはDATA_EXTRA_NAME エクストラから取得されます。オプション-eを使用する場合は、オプション-d を使用しないでください。 |
例
以下の例は、コンテンツがURIで指定されている場合に入力するサインインインテントのコマンドを示しています。
adb shell am start -a com.yourcompany.player.SIGN_IN -n com.yourcompany.player/com.yourcompany.player.MainActivity -f 270532640 -d myplayer://content/12345`
以下の例は、コンテンツがURI以外で指定されている場合に入力するサインインインテントのコマンドを示しています。
adb shell am start -a com.yourcompany.player.SIGN_IN -n com.yourcompany.player/com.yourcompany.player.MainActivity -f 270532640 -e content_id 12345`
手順C: アプリへの再生リクエストをテストする
サインインリクエストと同様に、再生リクエストでは、機能交換の際にランチャーに提供したデータを使用します。再生リクエストにはコンテンツ参照が含まれ、実装によって、URIである場合と、データエクストラの名前と値のペアである場合があります。次の手順に従って再生リクエストをテストします。
- ADBを使用してFire TVデバイスに接続したコンピューターで、コマンドラインにアクセスできるようにターミナルウィンドウを開きます。
- シェルのプロンプトで、以下のコマンドのいずれかを入力します。
-
コンテンツがURIで指定されている場合は、以下を入力します。
adb shell am start -a <playback_intent_action> -n <playback_component> -f <playback_intent_flags> -d <content_uri>
-
コンテンツがデータエクストラのキーと値のペアで指定されている場合は、以下を入力します。
adb shell am start -a <playback_intent_action> -n <playback_component> -f <playback_intent_flags> -e <data_extra_name> <content_id>`
-
コマンドオプション
次の表に、上の2つのコマンドで使用できるオプションを示します。山かっこ<>
内のテキストはアプリに応じた値に置き換えてください。
コマンド | 説明 |
---|---|
-a <play_intent_action> |
PLAY_INTENT_ACTION エクストラから取得される再生インテントアクション。例: android.intent.action.VIEW |
-n <play_component> |
再生アクティビティの完全なコンポーネント名。パッケージ名とクラス名がスラッシュで区切られています。これらの値はそれぞれ、PLAY_INTENT_PACKAGE エクストラとPLAY_INTENT_CLASS エクストラから取得されます。例: com.yourcompany.player/com.yourcompany.player.PlayActivity |
-f <play_intent_flags> |
PLAY_INTENT_FLAGS エクストラで10進値として指定し、デフォルトのランチャーフラグと結合したインテントフラグ。デフォルトでは、ランチャーは以下のフラグを送信します。 • Intent.FLAG_ACTIVITY_NEW_TASK • Intent.FLAG_INCLUDE_STOPPED_PACKAGES • Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED 10進値の例: 270532640 |
-d <content_uri> |
コンテンツへのリンクがURIで指定されている場合はそのURI。オプション-d を使用する場合は、オプション-e を使用しないでください。 |
-e <data_extra_name> <content_id> |
コンテンツへのリンクがURI以外の方法で指定されている場合は、そのコンテンツのキーと値のペア。キーはDATA_EXTRA_NAME エクストラから取得されます。オプション-e を使用する場合は、オプション-d を使用しないでください。 |
例
以下の例は、コンテンツがURIで指定されている場合に入力する再生インテントのコマンドを示しています。
adb shell am start -a com.yourcompany.player.PLAY -n com.yourcompany.player/com.yourcompany.player.MainActivity -f 270532640 -d myplayer://content/12345
以下の例は、コンテンツがURI以外で指定されている場合に入力する再生インテントのコマンドを示しています。
adb shell am start -a com.yourcompany.player.PLAY -n com.yourcompany.player/com.yourcompany.player.MainActivity -f 270532640 -e content_id 12345`