Unity Analytics はマネタイゼーションのためにゲーム内収入をモニタリングすることができます。レシート検証 を行うことにより、正当なものかどうかすぐに分かります。
Unity Analytics では、アプリ内課金を通じてのマネタイゼ―ションを追跡するために UnityAnalytics.Transaction メソッドが用意されています。このメソッドは、マネタイゼーション イベントが発生するごとに呼び出される必要があります。 Analytics.Transaction メソッドは、パラメーターとして price (価格) や currency (通貨) が必須で、場合により Apple iTunes や Google Play の receipt (レシート) の文字列が必要となる場合もあります。
// Unity Analytics 名前空間を参照
using UnityEngine.Analytics;
// プレイヤーが monetization イベントをトリガするすべての場所でこれを呼び出します
Analytics.Transaction(string productId, decimal price,
string currency, string receipt,
string signature);
Analytics.Transaction Input Parameters | ||
---|---|---|
Name | Type | Description |
productId | string | The id of the purchased item. |
price | decimal | The price of the item. |
currency | string | Abbreviation of the currency used for the transaction. For example “USD” (United States Dollars). See here for a standardized list of currency abbreviations. |
receipt | string | Receipt data (iOS) or receipt ID (Android) for in-app purchases to verify purchases with Apple iTunes or Google play. Use null in the absence of receipts. For more details see Receipt Verification. |
signature | string | Android receipt signature. If using native Android use the INAPP_DATA_SIGNATURE string containing the signature of the purchase data that was signed with the private key of the developer. The data signature uses the RSASSA-PKCS1-v1_5 scheme. Pass in null in the absence of a signature. |
下記の例は、レシート検証なしの $0.99 USD のトランザクションです。
Analytics.Transaction("12345abcde", 0.99m, "USD", null, null);
テストとして、サーバーにマネタイゼーションのデータを送信し、エディター実行中、実際に課金処理が行われるかを確認します。もし成功したのであれば、テストデータは下記のテーブルのように表示されます。