開発者コンソール

手順6: コンテンツレシピをセットアップする

手順6: コンテンツレシピをセットアップする

カテゴリーの構成では、メディアの一般的なグループを構成しました。この手順では、フィードのコンテンツ(タイトル、説明、画像、ビデオURLなど)をFire App Builderのコンテンツモデルにマッピングします。レシピ構成の概要については、レシピ構成の概要を参照してください。

コンテンツレシピの構成

  1. <プロジェクト名>ContentsRecipe.jsonファイル(app > assets > recipes内)を開きます。

    デフォルトのコンテンツレシピ構成は次のようになっています。

    {
      "cooker": "DynamicParser",
      "format": "json",
      "model": "com.amazon.android.model.content.Content",
      "translator": "ContentTranslator",
      "modelType": "array",
      "query": "$[?(@.categories[0] in [$$par0$$])]",
      "matchList": [
        "title@mTitle",
        "id@mId",
        "description@mDescription",
        "videoURL@mUrl",
        "imgURL@mCardImageUrl",
        "imgURL@mBackgroundImageUrl",
        "channel_id@mChannelId"
        ]
    }
    
  2. 以下の表の説明に従って、ファイルの値を構成します。

    キー 説明

    cooker

    レシピで定義されたパラメーターを受け取ってロジックを実行するユーティリティを定義します。つまり、レシピを「料理」するのがcookerです。この値は、デフォルトの DynamicParserのままにします。

    format

    受信データフィードのデータ形式を指定します。指定できる値はjsonまたはxmlです。

    translator

    フィードのオブジェクトをFire App Builderのコンテンツモデルに変換するときに、トランスレーションとリフレクションのどちらを使用するかを指定します。トランスレーションの方が高速であり、推奨されます。トランスレーションを使用するには、この値をデフォルトの ContentTranslatorにします。代わりにリフレクションを使用する場合は、レシピからtranslatorパラメーター全体を削除します。

    model

    データのコンテンツモデルを指定します。コンテンツモデルは、コンテンツの構造を提供し、その構造をFire App BuilderのUIにマッピングします。デフォルトのcom.amazon.android.model.content.Contentのままにします。

    modelType

    フィードが配列であるか単一オブジェクトであるかを指定します。指定できる値はarrayまたはsingleです。ほとんどのフィードはarrayです。たとえば、JSONフィードが角かっこで囲まれている場合や、XMLフィードで山かっこが入れ子になっている場合は、arrayを選択します。フィードが1つのオブジェクトとして構成されている場合は、singleを選択します。

    query

    メディアフィードからコンテンツアイテムを返すために使用されるクエリ。クエリの構文は、フィードの構造によって異なります。コンテンツアイテムを取得するには、適切なクエリを作成する必要があります。JSONフィードの場合は、クエリ構文にJayway JsonPath構文(英語のみ)を使用します。XMLフィードの場合は、XPath式(英語のみ)を使用します。現時点では、このフィールドの値はそのままにします。これは、次の手順の コンテンツレシピ:queryパラメーターで構成します。

    queryResultType

    queryパラメーターの結果が文字列のリストを返す場合は、このqueryResultTypeパラメーターを追加して、値を[]$に設定します。クエリの結果がオブジェクト(マップ)である場合は、このパラメーターを省略します(Fire App Builderでは、オブジェクトをJavaハッシュマップにプッシュする必要があるため、結果の型を把握する必要があります)。

    matchList

    queryパラメーターで定義したクエリからは、結果が返されます。この結果では、フィードで使用されている名前を、Fire App Builderのコンテンツモデルで使用される名前にマッピングする必要があります。matchListパラメーターは、クエリの結果をFire App Builderのメディアカテゴリーの名前にマッピングします。現時点では、このフィールドの値はそのままにします。これは、後の手順の コンテンツレシピ:matchListパラメーターで構成します。

次のステップ

これでコンテンツレシピの基本的なプロパティが構成されたので、queryパラメーターについて詳しく見ていきましょう。次の手順の コンテンツレシピ:queryパラメーターに進みます。