Integración de analíticas de post-instalación para Unity

Última actualización:
Requisitos previos

Antes de empezar necesitas:

Si estas configurando las PIA (analíticas post-instalación) y tu plugin Unity terminará en Google Play o el Amazon Appstore, también debes añadir la clave pública de tu aplicación o la clave secreta de desarrollador de Amazon en un campo de la página Ajustes de aplicación:

Appstore de Amazon

Google Play Store

(Puedes encontrar tu clave secreta aquí). Para encontrar tu clave pública de Google: inicia sesión en la Developer Console de Google Play, entra en la página Application Details, haz clic en el enlace Services and APIs y la después en la sección Licensing and In-App Billing. Ahí verás tu clave pública para facturación dentro de la aplicación).

Integración PIA de Unity

Hay distintas formas de manejar el flujo de compras dentro de la aplicación (IAP) en los juegos creados con Unity; abajo puedes ver los pasos que debes seguir para enviar esta información a Chartboost después de eventos de compra:

Unity para iOS

1) Para llamar al método de seguimiento de IAP de Chartboost primero necesitas incluir la clase using ChartboostSDK si no lo has hecho antes.

2) Enviar información IAP al SDK de Chartboost:

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

Unity para Google Play

1) Para llamar al método de seguimiento de IAP de Chartboost primero necesitas incluir la clase using ChartboostSDK si no lo has hecho antes.

2) Enviar información IAP al SDK de Chartboost:

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

Unity para Amazon

1) Para llamar al método de seguimiento de IAP de Chartboost primero necesitas incluir la clase using ChartboostSDK si no lo has hecho antes.

2) Enviar información IAP al SDK de Chartboost:

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

Puedes encontrar las definiciones de los parámetros en el archivo Chartboost.cs del proyecto de muestra (Assets/Chartboost/Scripts/):

namespace ChartboostSDK {

#if UNITY_ANDROID
/// <summary>
/// Sigue un evento de compra dentro de la aplicación para el Google Play Store.
/// Sigue compras dentro de la aplicación para su posterior uso en segmentación y objetivos.
/// </summary>
/// <param name="title">El nombre localizado del producto.</param>
/// <param name="description">La descripción localizada del producto.</param>
/// <param name="price">El precio del producto.</param>
/// <param name="currency">La divisa localizada del producto.</param>
/// <param name="productId">El identificador google play del producto.</param>
/// <param name="purchaseData">La cadena de datos de compra de la transacción.</param>
/// <param name="purchaseSignature">La firma de compra de la transacción.</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>
/// Sigue un evento de compra dentro de la aplicación para el Amazon Store.
/// Sigue compras dentro de la aplicación para su posterior uso en segmentación y objetivos.
/// </summary>
/// <param name="title">El nombre localizado del producto.</param>
/// <param name="description">La descripción localizada del producto.</param>
/// <param name="price">El precio del producto.</param>
/// <param name="currency">La divisa localizada del producto.</param>
/// <param name="productID">El identificador amazon del producto.</param>
/// <param name="userID">El identificador de usuario de la transacción.</param>
/// <param name="purchaseToken">El token de compra de la transacción.</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>
/// Sigue un evento de compra dentro de la aplicación para el App Store de iOS.
/// Sigue compras dentro de la aplicación para su posterior uso en segmentación y objetivos.
/// </summary>
/// <param name="receipt">El recibo de transacción utilizado para validar la compra.</param>
/// <param name="productTitle">El nombre localizado del producto.</param>
/// <param name="productDescription">La descripción localizada del producto.</param>
/// <param name="productPrice">El precio del producto.</param>
/// <param name="productCurrency">La divisa localizada del producto.</param>
/// <param name="productIdentifier">El identificador iOS del producto.</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

}
Cómo probar tu configuración PIA (juegos iOS creados con Unity)

Después de completar la integración PIA puedes habilitar un modo sandbox para probarla antes de enviar tu juego al App Store para su aprobación.

Para ello necesitarás habilitar una bandera de modo de prueba en el SDK de Chartboost en una variable de entorno. Estos son los pasos:

1. Abre la sección de esquema en la esquina superior izquierda de Xcode y selecciona Edit Scheme en el menú desplegable:

2. Haz clic en Run en el menú de la izquierda y pasa a la pestaña Arguments:

3. Haz clic en el símbolo + de la sección Environment Variables y escribe CB_TEST_MODE en el campo Name:

4. Haz doble clic en el espacio bajo el título Value e introduce on en el campo:

Después haz clic en OK, ejecuta tu proyecto y haz una compra en el modo de desarrollo. Deberías ver la aplicación en el panel de analíticas de post-instalación en unos minutos si ya integraste PIA en un juego diferente. (Si esta es tu primera aplicación con PIA, espera un día antes de acceder al panel PIA).

(Recuerda que como el modo sandbox está habilitado no verás datos PIA en el panel).

Recuerda eliminar la variable de entorno CB_TEST_MODE antes de lanza tu juego.