マーケット選択
「Market selection」は、複数マーケット(例: App Store + PG)を提供する環境で、購入に使用するマーケットをユーザーが選択できる機能です。
仕組み¶
このページでは、setMarketSelection、getSelectedMarket など Market selection に必要な API と、呼び出し順序/利用フローを説明します。
IAP v4 初期化時に marketConnect を呼び出すと、端末で利用可能なマーケット一覧が返されます。複数マーケットが利用可能な場合は setMarketSelection でマーケットを選択し、getSelectedMarket で確認後、購入を進めます。
API 呼び出しシーケンス¶
marketConnect: アプリ起動時に1回呼び出しgetProductInfo: ストアごとに初回利用時1回呼び出し(同じストア内で追加購入する場合、再呼び出しは不要)setMarketSelection: ユーザーが別のストアへ切り替える場合のみ呼び出しgetSelectedMarket: 任意(現在選択されているストアの確認用)
flowchart TD
A(["marketConnect"])
D(["setMarketSelection"])
E(["getSelectedMarket"])
B(["getProductInfo"])
C{"支払い方法(ストア)の変更"}
F(["purchase / restore / transactionFinish"])
H([完了])
A --> D
D --> E --> B
B --> C
C -- "はい" --> D
C -- "いいえ" --> F
F --> H getProductInfo の呼び出し¶
上記フローで getProductInfo は マーケットごとに初回1回のみ 呼び出してください。
- 成功後、対象マーケットの商品情報は SDK 内にキャッシュされます。後で
setMarketSelectionによりマーケットを切り替えても再呼び出しは不要です。
setMarketSelection¶
setMarketSelection API は、後続の購入フローで使用するマーケットを IAPV4Type で設定します。
setMarketSelection を呼び出すタイミング
marketConnect の後、purchase または restore の前に呼び出してください。
* ユーザーが支払い手段を変更したときに呼び出します。 * 変更後の purchase / restore は新しいマーケットで動作します。
IAPV4Type¶
IAPV4Type は IAP v4 でサポートするマーケット種別を表す enum です。
| Value | Name | Description |
|---|---|---|
| 0 | notSelected | 未選択 |
| 1 | appStore | Apple App Store |
| 2 | Google Play Store | |
| 3 | lebi | Lebi Market |
| 4 | oneStore | ONE Store |
| 5 | amazon | Amazon Appstore |
| 6 | samsung | Samsung Galaxy Store |
| 7 | huawei | Huawei AppGallery |
| 8 | funtap | Funtap |
| 9 | oppoAppMarket | OPPO App Market |
| 10 | vivoAppStore | vivo App Store |
| 11 | tencentMyapp | Tencent Myapp |
| 12 | xiaomiAppStore | Xiaomi App Store |
| 13 | huaweiAppGalleryChina | Huawei AppGallery China |
| 14 | facebookCloudGame | Facebook Cloud Game |
| 15 | hiveStore | PG |
| 16 | steam | Steam |
| 17 | nowgg | now.gg |
getSelectedMarket¶
getSelectedMarket API で現在選択されたマーケット種別を取得できます。
getSelectedMarket を呼び出すタイミング
購入要求前に現在マーケットを確認する用途で使用してください。