カスタムイベント
レシート検証

マネタイゼーション

Unity Analytics はマネタイゼーションのためにゲーム内収入をモニタリングすることができます。レシート検証 を行うことにより、正当なものかどうかすぐに分かります。

Unity Analytics では、アプリ内課金を通じてのマネタイゼ―ションを追跡するために UnityAnalytics.Transaction メソッドが用意されています。このメソッドは、マネタイゼーション イベントが発生するごとに呼び出される必要があります。 Analytics.Transaction メソッドは、パラメーターとして price (価格) や currency (通貨) が必須で、場合により Apple iTunes や Google Play の receipt (レシート) の文字列が必要となる場合もあります。

  // Reference the Unity Analytics namespace
  using UnityEngine.Analytics;

  // Use this call for each and every place that a player triggers a monetization event
  Analytics.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 の取引です。

Analytics.Transaction("12345abcde", 0.99m, "USD", null, null);

実行する

テストとして、サーバーにマネタイゼーションのデータを送信し、エディター実行中、実際に課金処理が行われるかを確認します。もし成功したのであれば、テストデータは下記のテーブルのように表示されます。

検証

カスタムイベント
レシート検証