CloudMoolah MOO Store は、モバイルアプリケーションを売買することを可能にする商用サービスです。 また、ストアを通じて配布されるアプリケーション用のアプリ内購入 (IAP) サービスも提供します。ここでは、開発者のために、CloudMoolah MOO Store にパブリッシュするゲームに IAP サービスを加えるエンドツーエンドプロセスについて説明します。
MOO Store は、フィリピン、マレーシア、ベトナム、シンガポール、タイなどのアジア市場にサービスを提供しています。 ユーザーは、モバイル決済、銀行、コンビニエンスストアのプリペイドカードなどのさまざまな決済サービスプロバイダーを使用して、資金を調達できるデジタルウォレットを管理します。
Although compatible with Unity, the CloudMoolah MOO Store is not a Unity product. For more information, see Configuring for CloudMoolah MOO Store or the CloudMoolah Developer Portal website at dev.cloudmoolah.com.
ゲームをストアにパブリッシュし、ゲームに IAP を加えるワークフローの概要は以下のとおりです。
Your game must be built as an Android app. For information on building as an Android app, see Getting started with Android development.
CloudMoolah Store でゲームをアプリケーションとして登録するには、以下の手順を行います。
Sign in to the CloudMoolah Developer Portal.
App Listing をクリックします
App Detail ページで、以下の情報を入力します
App Name に CloudMoolah Store でゲームを認識できる名前を入力します
In BundelID に Unity エディターで使用するゲームのパッケージ名を入力します
Currency Name にプレイヤーが IAP で使用する通貨名を入力します
To create a HashKey that you will use in the initialization code for your app, click GENERATE next to the HMAC/HashKey field.
Notification HMAC フィールドで App ID を入力します。この値は初期化に使用されます。
Save をクリックします
IAP とは、アプリケーション内でデジタルプロダクトとお金を交換するトランザクションです。プラットフォームのストアを通して、ユーザーはデジタルプロダクトを購入することが可能になります。これらのプロダクトには識別子 (通常は文字列データ型) があります。
CloudMoolah Developer ポータルに購入可能なアイテムを加えるには、以下の手順を行います。
On the IAP Detail page, enter the following information:
In the ProductID field, enter a string identifier that you will use in your code to enable purchase of the item in your game.
Amount フィールドに、ゲームを登録したときに指定したデフォルトの通貨でアイテムの値段を入力します
Product Name フィールドに、プロダクトの名前を入力します
Product Description に、プロダクトの説明を入力します
アイテムは IAP Listing ページに表示され、ゲーム内でそのアイテムを提供することができます。
IAP をゲームに設定するには、以下の手順を行います。
CloudMoolah MOO Store をターゲットとするアプリケーションには、Unity IAP の初期化の前に、CloudMoolah の appKey と hashKey を設定する必要があります。これは、スクリプト API を通して IMoolahConfiguration を使用して 行います。これらの変数の値は、アプリケーションの CloudMoolah Developer ダッシュボードから収集します。
以下の例では、Unity IAP の初期化を設定して開始します。
using UnityEngine.Purchasing; public class MyStore : IStoreListener { public void InitializeStore() { var module = StandardPurchasingModule.Instance(); var builder = ConfigurationBuilder.Instance(module);
// Configure CloudMoolah
builder.Configure<IMoolahConfiguration>().appKey = "d93f4564c41d463ed3d3cd207594ee1b";
builder.Configure<IMoolahConfiguration>().hashKey = "cc";
// For server-to-server (also called "online" games) transaction
// logging, set IMoolahConfiguration.notificationURL.
builder.Configure<IMoolahConfiguration>().notificationURL = "https://gameserver.example.com/callback";
builder.Configure<IMoolahConfiguration>().SetMode(CloudMoolahMode.Production);
// Add purchasable products. The product must be defined in the store.
// Unity IAP provides the *ProductType* enumeration to specify the durability
// of a purchasable product. CloudMoolah limits the product type to Consumable.
builder.AddProduct("100.gold.coins", ProductType.Consumable);
// Start asynchronous IAP initialization.
UnityPurchasing.Initialize(this, builder);
}
}
初期化コード内でターゲットストアを設定するには、UnityPurchasingEditor.TargetAndroidStore 関数を呼び出します。
UnityPurchasingEditor.TargetAndroidStore(AndroidStore.CloudMoolah);
注意: キーストアファイルの保管には特に注意をしてください。パブリッシュしたアプリケーションを更新するには、常に元のキーストアが必要です。
For more information on setting up and configuring IAP, see Setting Up Unity IAP, Unity In-App Purchasing Initialization, and Integrating Unity In-App Purchasing with your game.
CloudMoolah MOO Store にテストを適用することができます。CloudMoolah MOO Store でゲームをテストするには、購入する前に IMoolahConfiguration.SetMode 関数を呼び出して、アプリケーションで開発者モードを有効にする必要があります。
ゲームのビルドでテストモードを設定すると、トランザクションはダミーのオフラインストアに対して処理されます。 これにより、プロダクトに関連する実際の金銭的な費用をかけずにアプリケーションの購買ロジックをテストすることができます。
ゲームの MOO Store テストモードを変更するには、ConfigurationBuilder インスタンスを作成し、以下の行を加えます。その後、アプリケーションをビルド、実行して IAP ロジックをテストします。
// テスト: すべてのトランザクションを自動許可
builder.Configure<IMoolahConfiguration>().SetMode(CloudMoolahMode.AlwaysSucceed);
エラー処理をテストするには、すべてのトランザクションを失敗するようにテストモードを設定します。これを行うには、CloudMoolahMode.AlwaysFailed Enumeration を使用します。
builder.Configure<IMoolahConfiguration>().SetMode(CloudMoolahMode.AlwaysFailed); // テスト: 常にすべてのトランザクションを失敗させます
ノート: テストが終了したら、開発者モードに設定する SetMode ステートメントを削除するか、CloudMoolahMode.Production Enumeration 値を使用するようパラメーターを変更します。こうすることにより、アプリケーションを使用するときに、ユーザーが現実のお金を支払うよう確実に設定できます。
Unity IAP のデフォルトのインテグレーションには、必須の CloudMoolah スクリプトAPI とオプションの CloudMoolah スクリプトAPI の一部を使用する方法を示す実装スクリプトの例が含まれています。
CloudMoolah 固有の例を表示するには、以下の手順を行います。
開発用マシンで IAP を使用可能にしたアプリケーションのフォルダーを開きます
Assets/Plugins/UnityPurchasing/script フォルダーを開きます
スクリプトフォルダーで IAPDemo.cs を開きます
この例では、IMoolahConfiguration
API を呼び出して appKey
と hashKey
を設定する Awake
関数を実装します。これにより、 アプリケーションを CloudMoolah ストアサーバーに接続します。
The IAPDemo.cs file also shows how to use optional API calls to configure test mode, and for extending functionality to include transaction restoration. For more information on the optional APIs, sign in to the CloudMoolah Developer Portal website at dev.cloudmoolah.com.
2018–03–07 限られた 編集レビュー で修正されたページ