Unity Analytics はマネタイゼーションのためにゲーム内収益をモニタリングすることができます。レシートの検証を行うことにより、正当なものかどうかすぐに分かります。
Unity Analytics では課金を通じて収益を追跡するために、柔軟なメソッドが用意されています。このメソッドは、マネタイゼーション イベントが発生する都度に呼び出される必要があります。トランザクションメソッドには、料金パラメーターとして currency(通貨)や 場合により Apple iTunes や Google Play のレシート情報が必要となります。
Unity Analytics では、アプリ内課金を通じてのマネタイゼ―ションを追跡するために UnityAnalytics.Transaction メソッドが用意されています。このメソッドは、マネタイゼーション イベントが発生するごとに呼び出される必要があります。 Analytics.Transaction メソッドは、パラメーターとして price (価格) や currency (通貨) が必須で、場合により Apple iTunes や Google Play の receipt (レシート) の文字列が必要となる場合もあります。
// Reference the Unity Analytics SDK package
using UnityEngine.Cloud.Analytics;
// Use this call for each and every place that a player triggers a monetization event
UnityAnalytics.Transaction(string productId, decimal price,
string currency, string receipt,
string signature);
Analytics.Transaction に必要なパラメーター | ||
---|---|---|
名前 | 型 | 説明 |
productId | string | 購入アイテムの ID |
price | decimal | アイテムの価格 |
currency | string | トランザクションに使用される通貨の略語。例えば、“USD” (United States Dollars: 米国ドル)など。通貨略称の標準略語リストについては、こちらを参照してください。 |
receipt | string | Apple iTunes や Google Play のアプリ内からアイテムの購入検証するための アプリ内課金用のレシートデータ(iOS)またはレシート ID(Android)。レシートが存在しない場合は、null を使用します。詳細は、レシート検証を参照してください。 |
signature | string | Android のアプリ内課金のレシートの署名。ネイティブの Android を使用している場合は、デベロッパーの私有鍵 (private key) で署名された購入データの文字列を含む INAPP_DATA_SIGNATURE を使用します。データの署名は、RSASSA-PKCS1-v1_5 を使います。署名が存在しないときは、null を渡します。 |
下記の例は、レシート検証なしの $0.99 USD のトランザクションです。
UnityAnalytics.Transaction("12345abcde", 0.99m, "USD", null, null);
テストとして、サーバーにマネタイゼーションのデータを送信し、エディター実行中、実際に課金処理が行われるかを確認します。もし成功したのであれば、テストデータは下記のテーブルのように表示されます。