トラブルシューティング
アプリがビルドされない場合は、問題の原因を特定するために、Logcatコンソールでエラーメッセージのトラブルシューティングを行うことができます。これらのメッセージは、レシピ構成のトラブルシューティングで表示される情報のコンテキストで使用できます。
問題を解決できない場合は、サポートフォーラムのFire TVとFire TV Stickのカテゴリーを参照してください。
エラーメッセージの確認
Fire App Builderのビルド時に次のようなエラーが表示された場合は、その理由をトラブルシューティングする必要があります。
エラーメッセージの意味を理解するには、Android Studioでエラーメッセージを確認する方法を理解しておく必要があります。プロジェクトをビルドするときに、下部にある [Logcat] ペインを展開します。適切なフィルターが選択されていることを確認します。下のスクリーンショットのように、接続されているデバイス、com.fireappbuilder.android.calypsoパッケージ、Errorを選択します。
アプリのビルド時にエラーが発生すると、そのエラーが一番上に表示されます。以降のセクションでは、発生する可能性のあるさまざまなエラーを解釈する方法について説明します。
レシピチェーンの失敗
レシピチェーンエラーに関連するメッセージの例を以下に示します。
08-10 12:48:11.163 23186-23186/com.fireappbuilder.android.calypso E/ContentBrowser: Recipe chain failed:
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String com.amazon.android.model.content.ContentContainer.getName()' on a null object reference
または、次のメッセージも関連します。
08-10 12:57:45.354 24945-24945/com.fireappbuilder.android.calypso E/ContentBrowser: Recipe chain failed:
java.lang.ClassCastException: java.util.HashMap cannot be cast to java.util.ArrayList
Fire App Builderでレシピの問題が発生しています。特にContentContainerレシピ、つまりカテゴリーレシピに問題があります。
レシピ構成のトラブルシューティングのチュートリアルを参照してください。レシピの結果、Fire App Builderがカテゴリーとしてキャプチャしている内容を調べます。適切な構成を確認するには、手順3: カテゴリーレシピをセットアップするを参照してください。
カテゴリーが適切な場合は、デバッガーを再開し、Fire App Builderがレシピを通じてコンテンツとしてキャプチャしている内容を調べます。コンテンツレシピの結果には、アイテム内のすべての要素やプロパティが表示されますが、多くの場合、マッピングされているのはそれらのアイテムのサブセットだけです。Fire App Builderでは、コンテンツモデルに次のプロパティが必要です。
mTitle
mId
mDescription
mUrl
mCardImageUrl
mBackgroundImageUrl
Fire App Builderのモデル名にマッピングされている値がすべて有効であることを確認します。たとえば、Logcatに「Model object not valid
」というエラーメッセージが表示され、mBackgroundImageUrl=''
(必須フィールド)が空になっている場合は、コンテンツレシピのmatchList
パラメーターによってそのフィールドの値が正しく選択され、Fire App Builderのコンテンツモデル要素にマッピングされることを確認します。このレシピに関する詳細を確認するには、手順6: コンテンツレシピをセットアップするを参照してください。
Navigatorの解析の失敗
アプリのビルド時に、Navigatorの解析の失敗を示す次のようなメッセージが表示されたとします。
E/NavigatorModelParser: Navigator parsing failed!!! com.fasterxml.jackson.databind.JsonMappingException: Unexpected character ('}' (code 125)): was expecting double-quote to start field name
Navigator.jsonファイルを開いて、JSONが正しいことを確認します。余分なカンマによりJSONが無効になると、このエラーが発生することがあります。また、アプリのassets > recipesフォルダ内のNavigator.jsonファイルで正しいファイルが指定されていること、およびデータローダーファイルで正しいレシピが読み込まれていることも確認します。