Empiece a utilizar Vungle SDK v. 5 para Corona

Contenido

Antes de empezar

  • Los anuncios no funcionarán en el simulador Corona. Para probar nuestros anuncios debe realizar la compilación en un dispositivo.
  • Recomendamos que use la compilación de Corona más reciente para la integración. Esta guía se escribió y se probó con la compilación diaria 3103. Comuníquese con tech-support@vungle.com si el plugin hospedado no funciona con la versión del SDK de Corona que utiliza.
  • El plugin Corona de Vungle para iOS admite iOS 8 y superior, limitado por SDK de Corona.
  • El plugin Corona de Vungle para Android admite Android 4.0.3 (Ice Cream Sandwich, versión 15 de API), iOS 15 y superior, limitado por el SDK de Corona.
  • Descargue nuestra aplicación de muestra: https://github.com/Vungle/Corona-Plugin/tree/sdk5.

Paso 1: actualice build.settings

El plugin Corona para el SDK v5.1 de Vungle aún no se encuentra disponible en el servidor oficial de Corona, pero puede utilizar los plugins autohospedados de Vungle. Añada la siguiente entrada en la tabla de plugins en build.settings. Al añadirla, el SDK se conectará al servidor para integrar el plugin del SDK 5+ Vungle durante la fase de compilación:

plugins =
{ ["plugin.vungle"] = { publisherId = "com.vungle",
},
..
}

Solo para Android

Para Android, se añadirán automáticamente los siguientes permisos cuando se utilice este plugin:

androidPermissions = {
    "android.permission.INTERNET",
    "android.permission.WRITE_EXTERNAL_STORAGE",
    "android.permission.ACCESS_NETWORK_STATE"
},

Paso 2: añada el código

Inicialice el SDK

Nota: una ubicación por defecto se crea automáticamente para cada aplicación. Debe proporcionar la ID de referencia de la ubicación en este paso de la inicialización independientemente de si desea aprovechar la funcionalidad de las ubicaciones. Si crea varias ubicaciones, proporcione todas las ID de referencia.

Recomendamos inicializar el SDK en cuanto inicie la aplicación, de modo que el SDK tenga tiempo suficiente para descargar los recursos del anuncio para la ubicación de almacenamiento automático en caché. La inicialización del SDK requiere:

  • importar los anuncios de Vungle,
  • la ID de la aplicación y
  • las ID de referencia de todas las ubicaciones que utilizará en su aplicación.

Puede encontrar estas ID en el panel de control de Vungle (consulte Configurar y generar informes de las ubicaciones).

Ejemplo de código:

local ads = require "plugin.vungle"
platform = system.getInfo( "platformName" )
placements = {}

if (platform == "Android") then
    appData = {
        appID="YOUR_ANDROID_APP_ID",
        placements={“PLMT_DEFAULT","PLMT_1","PLMT_2"}
    }
else
    appData = {
        appID="YOUR_IOS_APP_ID",
        placements={“PLMT_DEFAULT","PLMT_1","PLMT_2"}
}

-- vungleAdListner is optional
ads.init("vungle", appData.appID .. "," .. appData.placements[1] .. "," .. appData.placements[2] .. "," .. appData.placements[3] [, vungleAdListener])

Luego de que el SDK se inicializa correctamente, invoca el siguiente evento:

event.type == "adAvailable"

Luego de que se inicializa el SDK de Vungle, este solicita automáticamente un anuncio para la ubicación de almacenamiento automático en caché que seleccionó en el panel de control de Vungle. Recomendamos seleccionar la ubicación más vista como la ubicación de almacenamiento automático en caché.

Luego de que un anuncio se almacena en caché correctamente, se invoca el evento adAvailable con la ID de referencia de ubicación que coincida con su ubicación de almacenamiento automático en caché. En las ubicaciones de almacenamiento automático en caché, este método solo se invoca cuando la disponibilidad del anuncio cambia de verdadero a falso o de falso a verdadero. El SDK continuará solicitando anuncios para la ubicación de almacenamiento automático en caché. En el resto de las ubicaciones, este método de devolución de llamada se invoca en caso de un “Error en la carga” (adAvailable devuelve un “No”’ en este caso).

También, puede comprobar la disponibilidad de un anuncio para una ubicación con la siguiente propiedad:

- (BOOL)isAdCachedForPlacementID:(nonnull NSString *)placementID;

Cargue un anuncio para una ubicación

En el caso de las ubicaciones diferentes a la ubicación de almacenamiento automático en caché, invoque el método ads.load() para cargar un anuncio. Toma una cadena de ID de referencia de ubicación como un argumento e intenta cargar un anuncio en esa ubicación determinada solo cuando se emite ads.load() y existe un anuncio disponible para esa ubicación:

ads.load( "PLMT_1” )

Nota: este método solo se usa en ubicaciones diferentes a la ubicación de almacenamiento automático en caché, debido a que los anuncios de almacenamiento automático en caché se cargan inmediatamente luego de que se carga el anuncio almacenado en caché previamente.

Reproduzca un anuncio en una ubicación

Tras brindar suficiente tiempo para que se complete la descarga de los recursos del anuncio, puede reproducir el anuncio invocando ads.show(). Debe comprobar si hay un anuncio listo para esta ubicación invocando event.adPlayble antes de intentar reproducir un anuncio.

Ejemplo de código:

if (event.placementID == appData.placements[1]) then
    if ( event.adPlayable == true ) then
        ads.show( "PLMT_DEFAULT")
    end
end

Control de eventos

Puede pasar detectores de eventos opcionales en ads.init() configurando el detector antes de que se realice la inicialización. Los detectores de eventos disponibles se detallan en la lista a continuación.

  • adStart
    type: adStart
    placementID: ID de referencia de ubicación
    isError: verdadero si no se pudo reproducir un anuncio; falso se comenzó a reproducir un anuncio

  • adLog
    type: adLog
    message: mensaje de actividad del anuncio

  • adInitialize
    type: adInitialize 

  • adAvailable
    type: adAvailable
    placementID: ID de referencia de ubicación
    isAdPlayable: verdadero si un anuncio está disponible para reproducirse; de lo contrario, falso

  • adEnd
    type: adEnd
    placementID: ID de referencia de ubicación
    didDownload: verdadero si el usuario hizo clic en el botón de descarga; de lo contrario, falso
    completedView: verdadero si el usuario visualizó 80 % o más del video; de lo contrario, falso

  • vungleSDKlog
    type: vungleSDKlog
    message: mensaje de evento del SDK

Ejemplo de código:

local function vungleAdListener( event )
    if ( event.type == "adStart" and not event.isError ) then
        -- adStart event is called and ad will play
    end
    if ( event.type == "adStart" and event.isError ) then
        -- Ad has not finished caching and will not play
    end
    if ( event.type == "adLog") then
        -- adLog event is called to pass ad activity information
    end
    if ( event.type == "adInitialize") then
        -- adInitilizaed is called when placement has successfully initialized
    end
    if ( event.type == "adAvailable" ) then
        -- adAvailable is called when playablility changes to/from true/false
        -- Usage example: setting a flag to true when download completes
        --   Check event.placementID and event.isAdPlayable to set a flag to true
        --   Then check this flag later in your app and play an ad when it is true
    end
    if ( event.type == "adEnd" ) then
        -- adEnd is called when the end card is closed and and control is return to the hosting app

    end
    if ( event.type == "vungleSDKlog" ) then
        -- vungleSDKlog is called when logging event from SDK takes place
    end
end

Opciones de personalización

El método ads.show() puede aceptar un diccionario de opciones para personalizar la experiencia de reproducción del anuncio.

Clave

Valor

Descripción

alertTitle

alertText

alertContinue

placement

Cadena

Puede personalizar un mensaje que se mostrará a los usuarios cuando intenten cerrar el video incentivado antes de que finalice.

Nota: esta configuración solo se aplica a los anuncios estándar de Vungle. En el caso de los anuncios de plantilla dinámica, la personalización se encuentra en el panel de control.

isAutoRotation

Expresión booleana

Para Android, si es verdadero (por defecto), el anuncio de rotará automáticamente según la orientación del dispositivo. Si es falso, utilizará la orientación preferida del anuncio.

Para iOS, consulte la clave orientation a continuación.

isSoundEnabled

Expresión booleana

Si es verdadero (por defecto), se habilitará el sonido durante la reproducción de un anuncio de video, sujeto a los ajustes de sonido del dispositivo. Si es falso, la reproducción del video se silenciará. Tenga en cuenta que el usuario puede silenciar o activar el sonido durante la reproducción.

immersive

Expresión booleana

Solo en Android, habilita o deshabilita el modo inmersivo en dispositivos KitKat+.

large

Expresión booleana

Solo en iOS, crea botones más grandes que controlan funciones del anuncio como silenciar o cerrar.

orientation

Entero

Solo en iOS, se ajusta en 4 para el modo horizontal, 0 para la orientación vertical o 5 para que rote automáticamente.


Ejemplo de código:

if (platform == "Android") then
    options = {
        placementId = placements[i],
        incentivized = isIncentivized,
        isAutoRotation = isAutoRotate,
        immersive = isImmersive,
        isSoundEnabled = not isMuted
    }
else
    options = {
        placementId = placements[i],
        incentivized = incentivized.isOn,
        large = large.isOn,
        isSoundEnabled = not muted.isOn
    }
end
if (not isempty(alertTitle.text)) then
            options.alertTitle = alertTitle.text
        end
        if (not isempty(alertText.text)) then
            options.alertText = alertText.text
        end
        if (not isempty(alertClose.text)) then
            options.alertClose = alertClose.text
        end
        if (not isempty(alertContinue.text)) then
            options.alertContinue = alertContinue.text
        end
        if (not isempty(placement.text)) then
            options.placement = placement.text
        end
end

ads.show(options)
¿Tiene más preguntas? Enviar una solicitud

Comentarios