6.x Guía de actualización: Unity

Última actualización:

Esta guía te ayudará a actualizar tus juegos para utilizar los SDKs (v6.0+) de Chartboost Unity.

Si buscas una guía básica para empezar la integración desde cero, visita esta página.


Requisitos

Recuerda que Chartboost es compatible con Android 2.3+ y iOS 6.0+. Asegúrate de que configuras las versiones de sistema operativo mínimas correctamente.


Diferencias clave

  1. La inicialización es tarea del SDK
    • Para simplificar la integración y reducir posibles problemas tras el lanzamiento.
  2. Opción del menú de Chartboost
    • Manejo y control más sencillos de los pares de ID y firma de aplicación.
  3. namespace Chartboost se llama ahora namespace ChartboostSDK.
    • En C# no se recomienda utilizar el mismo nombre para el espacio de nombres y una clase (la clase Chartboost proporciona las funciones públicas del API).
  4. null / () ya no se aceptan como ubicaciones; en su lugar puedes utilizar CBLocation.Default.
    • Aunque todavía tenemos una ubicación por defecto, recomendamos el uso de nombre de ubicación más descriptivos a través de la clase CBLocation para mejorar la precisión de las analíticas.
  5. Todas las ubicaciones pasan ahora por la clase CBLocation.
    • La clase CBLocation tiene varios valores predeterminados de ubicaciones comunes.
    • Las cadenas de ubicación personalizada ahora pasan por el método locationFromName(string) de la clase CBLocation.
  6. Las llamadas de MoreApps utilizan ahora las ubicaciones public static void showMoreApps(CBLocation location).
    • Control más detallado sobre MoreApps (ya existía en SDKs nativos).
  7. Los nombre de eventos y las firmas de método del SDK de Chartboost han sido sensiblemente actualizados y mejorados.
    • El API y la funcionalidad están más próximos a los SDKs nativos.
    • Encontrarás más información sobre la funcionalidad de eventos disponible, nueva y antigua, en el archivo README.md o el portal de ayuda de Chartboost (https://answers.chartboost.com/hc/es-419/articles/200780379).
  8. CBBinding.cs queda esencialmente remplazado por Chartboost.cs.  Si llamabas a CBBinding.isImpressionVisible(), ahora deberás llamar a Chartboost.isAnyViewVisible(). Puedes ver todos los métodos disponibles en Chartboost.cs.

Cómo actualizar a 6.x

    1. Elimina las carpetas antiguas de plugin:
      • \Plugins\Android //Archivos del SDK de Android
      • \Plugins\iOS //Archivos del SDK de iOS
      • \Plugins\Chartboost //Proyecto de muestra
    2. Importa el nuevo paquete del SDK:
      • Assets > Import Package > Custom Package
      • Selecciona el archivo .unitypackage que descargaste de Chartboost.
      • Selecciona Import para completar la acción (todos los recursos del paquete están marcados para su importación por defecto).
    3. Arrastra y suelta el prefab de Chartboost a la escena de tu juego desde /Assets/Chartboost/Chartboost.
    4. Selecciona Chartboost > Edit Settings en el menú:
      • Haz clic en el botón Setup Android SDK en la ventana del inspector de ChartboostSettings.
      • Edita la configuración del ID y de la firma de la aplicación con los valores actuales para cada plataforma.
    5. Renombra todas las líneas using Chartboost; a using ChartboostSDK;
    6. Renombra todas las referencias CBManager.CBImpressionError a CBImpressionError
    7. Elimina el siguiente código init de Chartboost en OnEnable():
    8. void OnEnable() {
      // Inicializa el plugin de Chartboost
      #if UNITY_ANDROID
      // Reemplaza estos con tu ID y firma de aplicación Android del portal de Chartboost
       CBBinding.init("CB_APP_ID_ANDROID", "CB_APP_SIG_ANDROID");
      #elif UNITY_IPHONE
      // Reemplaza estos con tu ID y firma de aplicación iOS del portal de Chartboost
       CBBinding.init("CB_APP_ID_IOS", "CB_APP_SIG_IOS");
      #endif
      }
      
    9. Elimina cualquier código de ciclo de vida de Chartboost específico de Android (funcionamiento del botón Atrás, pausa, destruir, etc.) en las siguientes funciones de Unity:
    10. #if UNITY_ANDROID
      public void Update() {
       if (Input.GetKeyUp(KeyCode.Escape)) {
       if (CBBinding.onBackPressed())
       return;
       else
       Application.Quit();
       }
      }
      
      void OnApplicationPause(bool paused) {
      // Gestiona el ciclo de vida del plugin Chartboost
       CBBinding.pause(paused);
      }
      
      void OnDisable() {
      // Cierra el plugin Chartboost
       CBBinding.destroy();
      }
      #endif
      
    11. Modifica las llamadas antiguas de Chartboost de CBBinding.showInterstitial(YOURLOCATIONHERE); a Chartboost.showInterstitial(YOURLOCATIONHERE);
      • CBBinding renombrado a Chartboost
      • Para todas las ubicaciones vacías null y () utiliza CBLocation.Default
      • Te recomendamos utilizar uno de los muchos valores predefinidos de CBLocation, por ejemplo CBLocation.Startup, CBLocation.LevelComplete o CBLocation.MainMenu
      • Si todavía utilizas cadenas de ubicación personalizadas, pásalas a través de CBLocation: CBBinding.showInterstitial("customLocation"); se convierte en Chartboost.showInterstitial(CBLocation.locationFromName("customLocation"));
    12. El método para chequear explícitamente anuncios que ya están en el caché ha cambiado de nombre:
      • Modifica las llamadas antiguas de Chartboost de CBBinding.hasCachedInterstitial(TUUBICACIÓNAQUÍ) a Chartboost.hasInterstitial(TUUBICACIÓNAQUÍ)
    13. Si utilizas los eventos de Chartboost, estas usan Chartboost en lugar de CBManager y ya no tienen "Event" al final de sus nombres:
      • Por ejemplo, CBManager.didDismissInterstitialEvent += didDismissInterstitialEvent; se convierte en Chartboost.didDismissInterstitial += didDismissInterstitial;
    14. Si utilizas los eventos de Chartboost, recuerda que dos eventos cambiaron de nombre significativamente:
      • didShowInterstitialEvent debe reemplazarse con didDisplayInterstitial
      • didShowMoreAppsEvent debe reemplazarse con didDisplayMoreApps
    15. Si utilizas los eventos de Chartboost, recuerda que los métodos relacionados con More Apps ahora siguen un parámetro adicional de string location que afecta a:
      • didFailToLoadMoreApps
      • didDismissMoreApps
      • didCloseMoreApps
      • didClickMoreApps
      • didCacheMoreApps
      • Por ejemplo, void didFailToLoadMoreAppsEvent(CBManager.CBImpressionError error) debe remplazarse con void didFailToLoadMoreApps(string location, CBImpressionError error).

Analíticas de post-instalación

Si vas a ofrecer compras dentro de la aplicación en tu juego, te recomendamos integrar las analíticas post-instalación: descubrirás datos útiles (ingresos, ARPU, retención, niveles, etc.) para optimizar las campañas de adquisición o crear grupos de usuarios para segmentar o resegmentar.