Amazonエクストラでおすすめをカスタマイズする
Amazonでは、おすすめと共にエクストラの値を送信できるようになっています。これらのエクストラを使用すると、Fire TVプラットフォームに合わせておすすめをカスタマイズできます。Amazonエクストラについては、Fire TVに関する全般的なドキュメントの Amazonエクストラを含むおすすめを送信する方法を参照してください。
送信できるAmazonエクストラの一部は、現在Fire TVで使用されていません(ただし、将来は使用できるようになる可能性があります)。 それ以外のAmazonエクストラには、Fire App Builderによってデフォルト値(変更できない値)が送信されます。
- Amazonエクストラ
- Fire App BuilderでAmazonエクストラを送信する方法
- Fire App Builderのおすすめにエクストラを含める方法
- おすすめでのアプリの表示名をカスタマイズする方法
- 次のステップ
Amazonエクストラ
以下の表に、使用できるAmazonエクストラの一覧を示します。この一覧は、Fire TVのAmazonエクストラの一覧と同じです。一覧の後のセクションで、Fire App BuilderでAmazonエクストラを送信する方法を説明します。
エクストラの名前 | データ型 | 詳細 | 使用の有無 |
---|---|---|---|
com.amazon.extra.DISPLAY_NAME |
String | (おすすめを選択した状態でメニューボタンを押すと)起動メニューにアプリの略称が表示されます。最大文字数は15文字です。それ以上の文字は切り捨てられ、省略記号で表示されることもありません。 | あり |
com.amazon.extra.MATURITY_RATING |
String | タイトルの下に評価が表示されます。この評価は、コンテンツの再生にPINの入力が必要かどうかを判定する、Amazon Fire TVの機能制限の設定にも使用されます。このエクストラまたはsetMaturityRating() の値を含まないおすすめは、成人向けコンテンツとみなされ、デバイスの機能制限の設定でPINの入力が必要になる場合があります。
現時点でサポートされている値は次のとおりです。
|
あり |
com.amazon.extra.ACTION_OPTION |
ArrayList<int> | 各おすすめに表示されるコンテキストメニューオプションを決定します。コンテキストメニューでは2つのアクションがサポートされていますが、1つめのアクションのみ構成可能です。 ユーザーがおすすめのタイルまたは1つ目のコンテキストメニューオプションをクリックすると、Amazon Fire TVは、おすすめとともに渡された、対応するコンテンツのインテントデータを使用して、アプリを起動します。注: アプリがアクションのArrayListを提供している場合は、 次の値を
値が指定されていない場合、デフォルトのアクションは |
あり |
com.amazon.extra.RANK |
int | このエクストラはアイテムをランクを条件に昇順でソートするために使用されます。ソート後は、送信時刻によって(最新のものから順に)サブソートされます。指定されていない場合、送信時刻が単独で使用されます。指定できる値の範囲は、0~INTEGER.MAX_VALUE です。値が小さいほどランクが高くなります。つまり、小さい値は大きい値より先に表示されます。 |
なし |
com.amazon.extra.CONTENT_ID |
String | このIDは、カタログ統合で使用されるコンテンツIDに対応します。 | なし |
com.amazon.extra.LIVE_CONTENT |
int | おすすめがライブコンテンツかどうか、また、CONTENT_START_TIME およびCONTENT_END_TIME に基づいて表示または非表示にする必要があるかどうかを判断するために使用されます。サポートされる値は次のとおりです。
| なし |
com.amazon.extra.CONTENT_RELEASE_DATE |
String | コンテンツのリリース年。例: 2016、2015、1977など。 | あり |
com.amazon.extra.CONTENT_CAPTION_AVAILABILITY |
int | コンテンツのクローズドキャプションの可否。
| あり |
com.amazon.extra.IMDB_ID |
String | コンテンツのIMDb ID(たとえば、URLがhttp://www.imdb.com/title/tt0417148 の場合、IDはtt0417148 です)。 |
なし |
com.amazon.extra.CONTENT_START_TIME |
long | ライブコンテンツのミリ秒単位での開始時刻(エポック) | なし |
com.amazon.extra.CONTENT_END_TIME |
long | ライブコンテンツのミリ秒単位での終了時刻(エポック) | なし |
com.amazon.extra.LONG_DESCRIPTION |
String | おすすめの概要。最大512文字です。 | なし |
com.amazon.extra.LAST_WATCHED_DATETIME |
long | おすすめコンテンツのミリ秒単位での最終視聴時刻(エポック)。 | なし |
com.amazon.extra.PREVIEW_URL |
String | おすすめのビデオや画像URLのプレビュー。 | なし |
com.amazon.extra.TAGS |
ArrayList<String> | コンテンツが4K(Ultra HD)の場合に、タグ ["UHD"] を追加する。 |
あり |
com.amazon.extra.CONTENT_CUSTOMER_RATING |
int | ユーザーによる評価。有効な値は0~10の範囲です。 | あり |
com.amazon.extra.CONTENT_CUSTOMER_RATING_COUNT |
int | このコンテンツを評価したユーザーの数。 | はい |
Fire App BuilderでAmazonエクストラを送信する方法
次の表に、Fire App Builderが各タグを処理する方法、フィード内のAmazonエクストラの要素をFire App Builderのコンテンツモデルのタグにマッピングする方法、データ型に関する特記事項を示します。ほとんどのAmazonエクストラのタグについては、コンテンツレシピを使用して、これらのタグ名にフィード内の要素をマッピングします。
コンテンツレシピ1
0
エクストラの名前 | Fire App Builderでの使用方法 |
---|---|
com.amazon.extra.DISPLAY_NAME |
この値は、各フィードアイテムでDISPLAY_NAME をマッピングするのではなく、アプリのstrings.xml ファイルで設定します。詳細については、おすすめでのアプリの表示名をカスタマイズする方法を参照してください。 |
com.amazon.extra.MATURITY_RATING |
コンテンツレシピでタグmaturityRating にマッピングします。 |
com.amazon.extra.RANK |
変更できません。Fire App Builderは、すべてのコンテンツアイテムに対してランク0 (最も高い優先度)を送信します。 |
com.amazon.extra.ACTION_OPTION |
Fire App Builderは空のリストを送信し、Fire TVのデフォルト値を受け入れます。デフォルトでは、Fire TVは起動コンテキストメニューで「開く 」と「<アプリ名>を起動 」という用語を使用します。Fire App Builderから送信する内容をカスタマイズするには、コンテンツレシピでタグactions にマッピングします。注: アプリでアクションのArrayListを提供する場合は、com.amazon.extra.DISPLAY_NAME (上記)が必須となります。 |
com.amazon.extra.LIVE_CONTENT |
この要素は、コンテンツレシピでタグlive にマッピングします。live の値はBoolean型(true またはfalse )であり、0 か1 の整数型ではないことに注意してください(Fire TVエクストラでは整数型が要求されます)。実際には、おすすめの送信時にFire App BuilderによってBooleanが整数に変換されます。詳細については、ライブストリームの構成を参照してください。コンテンツがライブの場合は、メディアの再生画面から [最初から観る] ボタンが削除されます。 |
com.amazon.extra.CONTENT_RELEASE_DATE |
コンテンツレシピでタグavailableDate にマッピングします。 |
com.amazon.extra.CONTENT_CAPTION_AVAILABILITY |
コンテンツで字幕を使用できるかどうかは自動的に検出されます。この要素をでマッピングする必要はありません。コンテンツにクローズドキャプションがある場合、Fire App Builderはおすすめの送信時にを渡します。ない場合はを渡します。
|
com.amazon.extra.IMDB_ID |
コンテンツレシピでタグimdbId にマッピングします。 |
com.amazon.extra.CONTENT_START_TIME |
コンテンツレシピでタグstartTime にマッピングします。ライブコンテンツでのみ有効です。 |
com.amazon.extra.CONTENT_END_TIME |
コンテンツレシピでタグendTime にマッピングします。ライブコンテンツでのみ有効です。 |
com.amazon.extra.TEXT_EMBEDDED_IMAGE |
サポートされません。 |
com.amazon.extra.LONG_DESCRIPTION |
Fire App Builderは、通常のdescription をこのエクストラに渡します。 |
com.amazon.extra.LAST_WATCHED_DATETIME |
Fire App Builderは、コンテンツのデータベース内のレコードを調べることで、この値を自動的に取得します。Fire App Builderでは各コンテンツの最終視聴時刻が保存されます。この値をコンテンツレシピでマッピングする必要はありません。 |
com.amazon.extra.PREVIEW_URL |
コンテンツレシピでタグvideoPreviewUrl にマッピングします。 |
genres |
genres (英語のみ)はAmazonエクストラではなく、Androidの通常のおすすめAPIの一部です。この要素は、コンテンツレシピでタグgenres にマッピングします。genres は、単一の文字列ではなく、文字列配列を指す必要があります。たとえば、"genres": ["COMEDY", "ARTS", "EDUCATION"] のようになります。Androidの標準のジャンル分け(英語のみ)を使用してください。 |
Fire App Builderのおすすめにエクストラを含める方法
エクストラは、フィード内のアイテムの詳細に含めます(ただし、recommendations
タグの内部に含めることはできません。recommendations
タグはコンテンツIDの配列だけにする必要があります)。Fire App Builderが関連のおすすめを作成するときに、Amazonエクストラと一致する追加情報もすべて追加されます。
以下に、すべてのエクストラを含むフィード内のアイテムの例を示します。
{
"id": "162270",
"title": "Thai Recipes - Thai Chicken Noodles Recipe",
"description": "Thai Recipes - Thai Chicken Noodles Recipe",
"duration": "355",
"thumbURL": "http://l2.cdn01.net/_thumbs/0000162/0162270/0162270__015f" type="jpg",
"imgURL": "http://l2.cdn01.net\/_thumbs/0000162/0162270/0162270__015f" type="jpg",
"videoURL": "http://media.cdn01.net/802E1F/process/encoded/video_1880k/0000162/0162270/D8HFLX0AC.mp4?source=firetv&channel_id=6341",
"categories": [
"International Cuisine"
],
"channel_id": "6341",
"recommendations": [
"162269",
"162266",
"162265",
"162264"
],
"maturityRating": "PG",
"live": true,
"startTime": 1490393748,
"endTime": 1490397347,
"videoPreviewUrl": "http://mywebsite.com/some/url/to/the/video.mp4",
"imdbId": "tt2417148",
"genres": ["DRAMA"],
"actions": [1, 101]
}
コンテンツレシピで、これらのエクストラをほかのフィードプロパティと同じようにマッピングします。ただし、マッピング先にm
は付きません。以下に例を示します。
{
"cooker": "DynamicParser",
"format": "json",
"model": "com.amazon.android.model.content.Content",
"translator": "ContentTranslator",
"modelType": "array",
"query": "$.items[?(@.categories[0] in [$$par0$$])]",
"matchList": [
"title@mTitle",
"id@mId",
"description@mDescription",
"videoURL@mUrl",
"imgURL@mCardImageUrl",
"imgURL@mBackgroundImageUrl",
"channel_id@mChannelId",
"recommendations@mRecommendations",
"maturityRating@maturityRating",
"live@live",
"startTime@startTime",
"endTime@endTime",
"videoPreviewUrl@videoPreviewUrl",
"imdbId@imdbId",
"genres@genres",
"actions@actions"
]
}
@
記号の左側にはフィード内のプロパティ名を指定し、@
記号の右側にはFire App Builderのコンテンツモデルの値を指定します。マッピングする名前は前述の表に記載されています。
おすすめでのアプリの表示名をカスタマイズする方法
Fire TVのホーム画面では、おすすめに表示されるアプリ名が15文字を超える場合、超えた部分が切り捨てられます。このため、アプリ名が不自然に見えることがあります。たとえば、「Fire App Builder」は「Fire App Builde」に切り詰められます。
表示名をカスタマイズすると、おすすめでの15文字の文字数制限に合わせて短いタイトルを設定できます。カスタマイズした名前の例を次に示します。
おすすめの詳細に表示されるアプリ名をカスタマイズするには
-
アプリのstrings.xmlファイル(res > values > strings.xml内)を開きます。
strings.xmlファイルは、対応する言語に応じて複数のファイルに分かれています。米国英語の場合は、strings.xml (en)を使用します。
-
このファイルに次の要素を追加して、任意のアプリ名を指定します。
<string name="app_name_short">FireAppBuilder</string>
Fire App Builderがおすすめを作成するときに、ここに含まれている値が使用され、com.amazon.extra.DISPLAY_NAME
として渡されます。
次のステップ
これで、アプリをビルドして構成する手順がすべて完了しました。準備が整ったら、Amazonアプリストアにアプリを申請しましょう。