前提条件
開始する前に、以下の準備が整っていることを確認してください。- Amazon開発者アカウント(認証に必要)- 開発者アカウントがない場合はサインアップしてください。
- 開発用コンピューターにVega CLIがインストールされていること -
vega --versionで確認してください。インストールされていない場合は、Vega SDKのインストールを参照してください。 - 最新のSDK Manager -
vega updateを実行して最新バージョンを入手してください。Vega SDK Managerを参照してください。 - Vega OSを実行し、使用するコンピューターと同じネットワークに接続されているFire TVデバイス。すべてのサポート対象デバイスの一覧については、Fire TVのデバイス仕様を参照してください。
Fire TVでの開発者モードの認証
開発者モードを有効にするには、Vega CLIを使用してAmazon開発者アカウントで認証する必要があります。このプロセスでは、Fire TVデバイスから認証コードを取得し、ブラウザ経由で認証した後、ターミナルからデバイスの有効化を完了します。有効化すると、デバイスは自動的に再起動します。- Fire TVの [設定] メニューにアクセスします。 オプション1:ホームボタンを使用する a. リモコンのホームボタンを押して、[ホーム] 画面に移動します。 b. 上部のメニューバーに移動します。 c. 右にスクロールして、[設定] アイコン(歯車記号)を見つけて選択します。 オプション2:ホームボタンのショートカットを使用する a. リモコンのホームボタンを3秒間長押します。 b. 表示されたクイックメニューから [設定] を選択します。
-
[設定] > [My Fire TV] > [バージョン情報] に移動します。
-
デバイス名(Fire TV Stick HD、Fire TV Stick 4K Select、Fire TVストリーミングメディアプレーヤーなど)を選択します。
- リモコンの中央のボタンを7回押します。 7回押すと、画面に「You are now a developer」という簡単な通知が表示されます。
-
戻るボタンを押して [My Fire TV] に戻ります。
一覧に [開発者オプション] が表示されます。
-
[開発者オプション] を選択します。
メニュー一覧に [開発者モード](デフォルトでは無効)が表示されます。
-
[開発者モード] を選択して続行します。
-
[続行] を選択して続行します(または、[キャンセル] を選択すると中止します)。
[キャンセル] を選択すると、ダイアログが閉じ、何も変更されずに [開発者オプション] 画面に戻ります。
[続行] を選択すると、Fire TVの画面に6桁の認証コードが表示されます。このコードは手順11で入力します。
-
Amazon開発者アカウントで認証するために、loginコマンドを実行します。
CLIの指示に従って認証を完了します。CLIによってデフォルトのウェブブラウザが自動的に開き、Amazonの認証ページが表示されます。ブラウザが自動的に開かない場合は、ターミナルに表示されているURLに移動してください。
-
ブラウザでVega CLIのアクセスを認可します。
Amazon OAuthの同意画面に、「Vega Authentication Test would like access to:」というメッセージに続けて開発者の基本的なプロフィール情報と名前が表示されます。
a. リクエストされた権限を確認します。
b. [許可] を選択してVega Authentication Testを認可します(または、[キャンセル] を選択すると拒否します)。
[キャンセル] を選択すると、CLIは認可を拒否し、認証エラーを表示します。やり直すには、
vega devmode loginをもう一度実行してください。 [許可] を選択すると、確認ページが開き、チェックマークアイコンと「Device connected to your account」というメッセージが表示されます。このページは閉じて構いません。 ターミナルに戻ります。CLIに次のように表示されます。 -
Fire TVの画面に表示された6桁のコードを使用してデバイスを有効にします。
Amazon開発者アカウントに登録されているベンダーが1つだけの場合は、CLIに次のように表示されます。アカウントに複数のベンダーが登録されている場合は、CLIからいずれかを選択するように求められます。使用するベンダーに対応する番号を入力します。CLIに「
✓ Device enabled successfully」と表示されます。 -
デバイスが再起動するまで待ちます。
-
デバイスの再起動後、[設定] > [My Fire TV] > [開発者オプション] > [開発者モード] に移動します。
[開発者モード] のステータスが [有効] として表示されます。
-
デバイスが認識されることを確認します。
1台のデバイスを接続したときの出力例:複数のデバイスを接続したときの出力例:
-
デバイスに接続します。
-
接続されているデバイスが1台の場合は、次のコマンドを使用します。
-
接続されているデバイスが複数ある場合は、デバイスのシリアル番号を指定します。
出力の例:
-
接続されているデバイスが1台の場合は、次のコマンドを使用します。
開発者モードの状態
開発者モードの動作には、有効、認証、無効の各状態があります。 有効状態 有効enable状態では、vshシェルアクセス、vpmによるパッケージ管理、コンポーネントデバッグ機能など、すべての開発者機能が有効になります。
認証状態
認証authenticating状態は、有効化処理中に開発者モードへのアクセスがシステムによって検証されていることを示します。
無効状態
無効disable状態では、機能へのアクセスが標準ユーザー機能のみに制限されます。
開発ツール
開発者モードでは、パッケージのデプロイ、コンポーネント管理、ファイル操作に不可欠なツールにアクセスできます。これらのツールは、適切な権限と適切なコンテキストの下で使用してください。Vega CLI
Vegaコマンドラインインターフェイス(CLI)コマンドは、デバイスにおけるパッケージのインストール、アンインストール、管理に使用します。以下のパッケージ操作が可能です。com.amazonプレフィックスが付いていないパッケージ)のみをサイドロードできます。
コンポーネント管理
アプリコンポーネントを起動、一覧表示、終了するには、vega deviceのコンポーネント管理コマンドを使用します。主なコマンドは以下のとおりです。
ファイル操作
開発マシンとデバイス間でファイルを転送するには、ファイル操作を使用します。デフォルトシェルでは/tmpディレクトリへのアクセスのみが許可されますが、コンポーネントシェルでは特定の/tmp/scratch/<パッケージID>ディレクトリにアクセスできます。転送後は必ずファイルのアクセス権を確認します。また、デバイスのストレージを維持するため、不要になった一時ファイルは削除します。ファイルパスでは大文字と小文字が区別されることに注意してください。 ファイルを削除するときは、次の点に注意してください。-
デフォルトの開発シェルから
/tmpにプッシュされたファイルのみを削除します。 -
以下の操作を行って、特定のコンポーネントシェル内で/tmp/scratch/<パッケージID>にあるファイルを削除します。
vega exec vda shell -t component-id com.myorg.myapp.mainコマンドを使用して、コンポーネントシェルに入る- /scratchディレクトリ(コンポーネントシェル内の/tmp/scratch/<パッケージID>のバインドマウント)に移動する
デフォルトシェルプッシュコンポーネントシェルプッシュデバイスからプル
ベストプラクティス
開発者モードを使用するときは、意図しないシステム変更を防ぐために、次のプラクティスを通常の開発ワークフローに組み込むことをお勧めします。- サイドロードするアプリは、Amazon以外のパッケージIDを持つアプリのみに限定します(パッケージIDの先頭が
com.amazonではないことを確認します)。 - タスクに必要な最低限のアクセスレベルを使用します。
- 最小権限の原則に従います。
- 自分のアクションがデバイスの安定性とセキュリティに影響を及ぼす可能性があることに注意します。
トラブルシューティングとサポート
開発中に問題が発生した場合は、影響を受けている領域(認証、シェルアクセス、パッケージ管理、コンポーネントの起動、ファイル操作)を特定することから始めます。よくある問題の原因として、権限の誤りやデバイス状態の制限などが挙げられます。 以下のセクションで説明する解決策で問題が解決しない場合は、loggingctl logを使用して関連するログを収集し、サポートを受けてください。
認証に関する問題
開発に関する一般的な問題
デバッグツール
loggingctl logを使用してシステムログを収集し、コンポーネントの状態をモニタリングします。各デバッグツールには、デバイスの状態に基づいた特定のアクセスレベルがあります。
関連トピック
- Fire TVデバイスでTCP/IP経由のVDAを構成する方法
- Vega仮想デバイスまたはFire TVでのアプリの実行
- Vega SDK CLIリファレンス
- Loggingctlを使用したシステムログの管理

