Unity 安装后数据分析集成

上次更新:
必备条件

开始前,您需要:

如果您设置 PIA 且您的基于 Unity 的游戏会发布在亚马逊应用商店或 Google Play,您还需要添加您的应用公开密钥或亚马逊开发者私人密钥到游戏应用设置页面的其中相应字段:

亚马逊应用商店

Google Play 商店

(您可以在此找到您的私人密钥。如需找到您的 Google Play 公用密钥: 请登录到 Google Play 开发者控制台,前往应用程序详情页面,点击服务和 API 链接,然后找到授权和应用内计费栏目。您可以在此页面看到用于游戏内结算的公用密钥。)

Unity PIA 集成

有多种方式可以在基于 Unity 的游戏中处理 IAP 流;以下步骤供您参考,在购买成功后发送 IAP 信息到 Chartboost:

Unity iOS

1) 如需调用 Chartboost IAP 跟踪方法,您首先需要包括 using ChartboostSDK 类 (如果您先前尚未执行该操作)

2) 发送 IAP 信息到 Chartboost SDK:

Chartboost.trackInAppAppleStorePurchaseEvent(receipt, productTitle, productDescription, productPrice, productCurrency, productIdentifier);

Unity Google Play

1) 如需调用 Chartboost IAP 跟踪方法,您首先需要包括 using ChartboostSDK 类 (如果您先前尚未执行该操作)

2) 发送 IAP 信息到 Chartboost SDK:

Chartboost.trackInAppGooglePlayPurchaseEvent(title,description,price,currency,productID,purchaseData,purchaseSignature);

Unity 亚马逊

1) 如需调用 Chartboost IAP 跟踪方法,您首先需要包括 using ChartboostSDK 类 (如果您先前尚未执行该操作)

2) 发送 IAP 信息到 Chartboost SDK:

Chartboost.trackInAppAmazonStorePurchaseEvent(title,description,price,currency,productID,userID,purchaseToken);

您可以在示例项目的 Chartboost.cs 文件 (Assets/Charboost/Scripts/) 找到参数定义:

namespace ChartboostSDK {

#if UNITY_ANDROID
/// <summary>
/// 跟踪 Google Play 商店的应用内购买事件。
/// 跟踪应用内购买用于日后用户分群和目标。
/// </summary>
/// <param name="title">产品本地化标题。</param>
/// <param name="description">产品本地化描述。</param>
/// <param name="price">产品价格。</param>
/// <param name="currency">产品当地货币。</param>
/// <param name="productId">产品 Google Play 标识符。</param>
/// <param name="purchaseData">交易购买数据字符串。</param>
/// <param name="purchaseSignature">交易签名数据字符串。</param>
 public static void trackInAppGooglePlayPurchaseEvent(string title, string description, string price, string currency, string productID, string purchaseData, string purchaseSignature) {
 CBExternal.trackInAppGooglePlayPurchaseEvent(title,description,price,currency,productID,purchaseData,purchaseSignature);
 }

/// <summary>
/// 跟踪亚马逊商店的应用内购买事件。
/// 跟踪应用内购买用于日后用户分群和目标。
/// </summary>
/// <param name="title">产品本地化标题。</param>
/// <param name="description">产品本地化描述。</param>
/// <param name="price">产品价格。</param>
/// <param name="currency">产品当地货币。</param>
/// <param name="productID">产品亚马逊标识符。</param>
/// <param name="userID">交易用户标识符。</param>
/// <param name="purchaseToken">交易购买令牌。</param>
 public static void trackInAppAmazonStorePurchaseEvent(string title, string description, string price, string currency, string productID, string userID, string purchaseToken) {
 CBExternal.trackInAppAmazonStorePurchaseEvent(title,description,price,currency,productID,userID,purchaseToken);
 }

#elif UNITY_IPHONE
/// <summary>
/// 跟踪 iOS App Store 的应用内购买事件。
/// 跟踪应用内购买用于日后用户分群和目标。
/// </summary>
/// <param name="receipt">交易收据用于验证购买。</param>
/// <param name="productTitle">产品本地化标题。</param>
/// <param name="productDescription">产品本地化描述。</param>
/// <param name="productPrice">产品价格。</param>
/// <param name="productCurrency">产品当地货币。</param>
/// <param name="productIdentifier">产品 iOS 标识符。</param>
 public static void trackInAppAppleStorePurchaseEvent(string receipt, string productTitle, string productDescription, string productPrice, string productCurrency, string productIdentifier) {
 CBExternal.trackInAppAppleStorePurchaseEvent(receipt, productTitle, productDescription, productPrice, productCurrency, productIdentifier);
 }
#endif

}
测试您的 PIA 设置 (使用 Unity 生成的 iOS 游戏)

完成 PIA 集成后,在将游戏递交 App Store 审核之前,您可以启用沙盒模式进行测试。

测试需要您通过 Xcode 的一个环境变量在 Chartboost SDK 中启用测试模式旗标。方法如下:

1. 打开 Xcode 左上角的 Scheme 一栏,从下拉菜单中选择 Edit Scheme:

2. 在左侧菜单点击 Run,切换至 Arguments 选项卡:

3. 点击 Environment Variables 一栏中的+号,在 Name 中填入 CB_TEST_MODE:

4. 双击 Value 下的空格,在出现的区域里键入 on:

然后点击 确定,运行您的项目,在开发模式中进行购买。如果您已经将 PIA 和另一个游戏集成,您应在几分钟内看到您的应用在安装后分析后台出现。(如果这是您的首个 PIA 应用,请等待它在 PIA 后台出现,等待时间不超过一天。)

(请注意,因为启用了沙盒模式,所以您无法在后台看见任何 IAP 数据。)

请记得在发行游戏前移除 CB_TEST_MODE 环境变量!