背景
オブジェクトとクラスを更新して、付加価値の機会モジュールを含めることができるようになりました。モジュールは詳細ページに表示され、発行者のコンテンツにリンクできます。このドキュメントでは、Google Wallet API を使用してモジュールを有効化し、使用するために必要な主な手順について説明します。
機能の例
|
|
| シングルビュー | リスト表示 |
このガイドは、Google ウォレットの基本コンセプトを理解しており、推奨される前提条件をすでに満たしていることを前提としています。 ご質問やフィードバックは、Google ウォレットの POC までお寄せください。
統合の手順
新しいモジュールを追加するには、ValueAddedModuleData を含めるようにオブジェクトやクラスを更新する必要があります。ValueAddedModuleData には次のフィールドがあります。
[必須] LocalizedString ヘッダー
モジュールに表示されるヘッダー。文字数の上限は 60 文字で、これより長い文字列は切り捨てられます。
LocalizedString の本文
モジュールに表示される本文。文字数の上限は 50 文字です。これより長い文字列は切り捨てられます。
画像イメージ
モジュールに表示される画像。推奨される画像比率は 1:1 で、画像はこの比率に合わせてサイズ変更されます。
[必須] 文字列 uri
モジュールがクリックされたときに移動する URI。これは、ウェブリンクまたはディープリンクにできます。ModuleViewConstraints viewConstraints
モジュールを表示するために満たす必要のある制約。ModuleViewConstraints には次のフィールドがあります。TimeInterval displayInterval
モジュールがユーザーに表示される期間。`startTime` と `endTime` の両方を定義できます。`startTime` が設定されていない場合、モジュールは挿入された直後に表示されます。`endTime` が設定されていない場合、モジュールは無期限に表示されます。int32 sortIndex
モジュールを並べ替えるためのインデックス。並べ替えインデックスが小さいモジュールは、並べ替えインデックスが大きいモジュールより前に表示されます。指定しない場合、並べ替えインデックスは INT_MAX とみなされます。インデックスが同じである 2 つのモジュールの並べ替え動作は定義されません。ValueAddedModuleData の例:
{
"valueAddedModuleData": [
{
"header": {
"defaultValue": {
"language": "en-US",
"value": "10% off merch"
}
},
"body": {
"defaultValue": {
"language": "en-US",
"value": "Shirts, caps, mugs, and more"
}
},
"image": {
"sourceUri": {
"uri": "http://www.images.google.com/opportunity"
}
},
"uri": "http://www.google.com/opportunity",
"viewConstraints": {
"displayInterval": {
"start": {
"date": "2024-08-01T18:30:00"
},
"end": {
"date": "2025-08-01T18:30:00"
}
}
},
"sortIndex": 0
},
{
"header": {
"defaultValue": {
"language": "en-US",
"value": "10% off concessions"
}
},
"uri": "http://www.google.com/new_opportunity"
}
]
}期待される動作
オブジェクトやクラスの更新が完了すると、対応するパスにモジュールが表示されます。モジュールを 1 つだけ追加した場合は、パスの前面に表示されます。
付加価値のある機会モジュールに関するガイドライン
モジュールを使用すると、ユーザーのパス エクスペリエンスを補完する追加のアクションを提供できます。モジュールを作成して管理する際は、次の点を考慮する必要があります。
- モジュールは、ユーザーがクリック可能であることを理解できるよう、適切な言語で定義する必要があります。
- モジュールには、特定のモジュールに関連する適切な画像が定義されている必要があります。
- モジュールを制御できるため、重要度と関連性に応じてモジュールの優先度を積極的に管理する必要があります。
- アクティブなモジュールのみをユーザーに表示する必要があります。これは、モジュールの displayInterval を設定するか、クラスまたはオブジェクトから事前に追加または削除することで制御できます。
例外処理
| メッセージ | 理由 |
|---|---|
| ValueAddedModuleData にはヘッダーが含まれている必要があります。 | ValueAddedModuleData にはヘッダーがありません。 |
| ValueAddedModuleData には空でない URI が含まれている必要があります。 | ValueAddedModuleData に空でない URI がありません。 |
| クラスごとに最大 15 個の付加価値モジュールを使用できます。 | クラスの付加価値モジュールを削減する必要があります。 |
| オブジェクトごとに最大 15 個の付加価値モジュールを指定できます。 | オブジェクトの付加価値モジュールを減らす必要があります。 |