開発者コンソール

おすすめ機能の概要


おすすめ機能の概要

提供しているフィード内のコンテンツについて、ユーザーにおすすめを送信することができます。おすすめは、Fire TVのホーム画面にある [ダウンロード済みアプリからのおすすめ] の行に表示されます。Fire TVのホーム画面におすすめを表示すると、最小限の労力でアプリの利用につなげることができます。

おすすめ機能の詳細については、Fire TVのドキュメントの[おすすめ機能の概要](../fire-tv/recommendations-overview.html)を参照してください。Fire App Builderには、おすすめを送信するために必要なAndroidコードがすべて組み込まれています。必要な作業は、おすすめの情報をフィードに追加し、Fire App Builderでいくつかのレシピを構成して、フィードのおすすめの要素をターゲットにすることだけです。

次のスクリーンショットは、Fire TVのホーム画面の [ダウンロード済みアプリからのおすすめ] 行を示しています。

NetflixアプリやHBO Goアプリがインストールされている場合は、それらの行の下に [ダウンロード済みアプリからのおすすめ] 行が表示されます。それ以外の場合は、[アプリ・ゲーム注目タイトル] 行の直下に表示されます。

[ダウンロード済みアプリからのおすすめ] 行には、現在インストールされている(かつ、少なくとも1回は起動された)アプリからのおすすめがすべて表示されます。NetflixやHBO Goなど、一部のアプリには個別のおすすめ行がありますが、その他のすべてのアプリでは、同じ [ダウンロード済みアプリからのおすすめ] 行の領域が共有されます。

2つの種類のおすすめ

Fire App Builderには2つの種類のおすすめがあります。

  • 共通のおすすめ: これらのおすすめは、アプリの起動時などに定期的に送信されます。詳細については、共通のおすすめを送信するを参照してください。
  • 関連のおすすめ: これらのおすすめは、特定のビデオが視聴されたときに送信されます。詳細については、関連のおすすめを送信するを参照してください。

まだフィードにおすすめの情報が含まれていない場合は、この情報を追加する必要があります。おすすめ機能を有効にするには、フィード内の各ビデオに一意のIDが必要です。

おすすめの要件

Fire TVに [ダウンロード済みアプリからのおすすめ] 行が表示されるには、(すべてのアプリを合わせて)5件以上のおすすめが送信される必要があります。ただし、Androidで1つのアプリが送信できるおすすめの数は50件に制限されているため、50件を超えないようにしてください(詳細については、おすすめ機能に関するベストプラクティスを参照してください)。

LightCastサンプルフィードを使用しておすすめ機能の動作を確認する方法

LightCastのフィードを使用するFire App Builderのサンプルアプリをビルドしても、おすすめは送信されません。LightCastのフィードにはおすすめの情報が含まれず、デフォルトのNavigator.jsonファイルにもおすすめのレシピが構成されていないためです。

Fire App BuilderのサンプルアプリとLightCastのフィードを使用しておすすめ機能の動作を確認できるように、おすすめの情報を追加したフィードが用意されています。このフィードは、アプリに含まれるファイルにハードコードされています。これを実装するには、次の手順を実行します。

  1. アプリのディレクトリで、Navigator.jsonの名前をNavigator_original.jsonなどのように変更します。navigator_with_recommendations.jsonの名前をNavigator.jsonに変更します。

  2. アプリのassets > configurationsで、DataLoadManagerConfig.jsonを開き、次のように指定します。

    {
      "data_downloader.impl": "com.amazon.dataloader.datadownloader.BasicFileBasedDataDownloader",
      "is_cache_manager_enabled": true,
      "data_updater.duration": 14400
    }
    
  3. 同じフォルダで、BasicFileBasedDownloaderConfig.jsonを開き、次のように指定します。

     {
       "data_file_path": "sample_feed_with_recommendations.json"
     }
    
  4. Fire TVで、次のオプションのいずれかを使用して、開発者ツールメニューをアクティブ化します。

  5. [開発者オプション][ON] にスライドさせます。次に、[Developer Row][ON] にスライドさせます。
  6. [Shared Recommendation Developer Row] パッケージを選択します。
  7. [設定] > [端末] > [再起動] の順に選択して、Fire TVを再起動します。
  8. Android Studioで、[Run App] ボタンをクリックします。

    アプリを起動すると、次の共通のおすすめがFire TVに送信されます。

    • 99605: "Cooking Tips : How to Deep Fry Chicken"
    • 99551: "How to Cook with Herbs"
    • 99570: "Consuming Passions Chips Recipe | Belgian Style"
    • 99580: "How to Make Mapo Tofu 麻婆豆腐の作り方"
    • 112683: "My Healthy Snacks & Eating Tips"

    これらのビデオは、フィード内のglobalRecommendations配列で指定されています。

    "globalRecommendations": [
        "99605",
        "99551",
        "99570",
        "99580",
        "112683"
    ]
    

    おすすめの情報は、Android Studioのログで確認できます。画面の下部にある [Android Monitor] をクリックし、「recommendation」という単語でフィルターを適用すると、おすすめが作成されて送信されたことを示すログが表示されます。ログは次のようになります。

    03-24 18:39:09.365 18717-18757/com.amazon.android.calypso D/RecommendationTable: record updated in database: RecommendationRecord{mContentId='99570', mRecommendationId=4, mType='Global'}
    03-24 18:39:09.368 18717-18757/com.amazon.android.calypso D/RecommendationSender: Built recommendation - Consuming Passions Chips Recipe | Belgian Style
    

    mType='Global'は、これが共通のおすすめであることを示します。

  9. アプリで、最初のビデオである「Thai Recipes - Thai Chicken Noodles Recipe」を参照し、数分間再生します。このビデオの詳細には、次のように関連のおすすめが含まれています。

    {
        "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"
        ]
    }
    

    このビデオを再生すると、次の関連のおすすめがFire TVのホーム画面に送信されます。

    • 162269: "Thai Tom Yum Soup Vegan Vegetarian Recipe"
    • 162266: "Thai Green Curry With Chicken"
    • 162265: "Homemade Chicken Pad Thai"
    • 162264: "Thai Peanut Chicken Tenders"

    ログでは、関連のおすすめにはmType='Global'ではなくmType='Related'が表示されます。

  10. ホームボタンを押してFire TVのホーム画面に戻ります。[設定] に移動してホーム画面を更新し、数秒待ってからホーム画面に戻ります。

  11. [Recommendations Testing Row] という行を探します。

この行におすすめが表示されているかどうかを確認します。おすすめ機能が正しく設定されていれば、次のいずれかのビデオが表示されます。

このビデオは「Consuming Passions Chips Recipe \| Belgian Style」です。

ビデオを視聴するには、ビデオをクリックして直接起動します。または、リモコンのメニューボタンをクリックして、Fire TVの右下隅にコンテキストメニューを開きます。コンテキストメニューから、ビデオの視聴やアプリの起動を行うことができます。

おすすめの設定ではすべてのビデオの優先度が同じになるため、おすすめ行に表示される順序はランダムです。

Fire App Builderにはデータベースが含まれており、おすすめに関するレコードが作成されます。Fire App Builderは視聴履歴を12日間保持しますが、現時点では、ユーザーが視聴済みのビデオをおすすめから除外するロジックは用意されていません。フィードが新しいおすすめで更新されていなければ、前に視聴したビデオに対して同じおすすめが送信されます。新しいバージョンのFire App Builderには、より高度なフィルターロジックが実装される可能性があります。

おすすめ機能のテストが完了したら、Fire App Builderでのフィードの読み込み方法を変更した部分を元に戻します。特に手順2を元に戻します。そうしないと、ウェブベースのフィードが正しく読み込まれなくなります。データローダーファイルの正しい設定については、メディアフィードを読み込むを参照してください。

次のステップ

これでおすすめ機能の基本を理解することができたので、最初の手順として、 共通のおすすめを送信するに進みます。共通のおすすめは、ユーザーが視聴しているコンテンツとは関係なく送信されるおすすめです。