Démarrage avec la version 5 du SDK Vungle - Corona

Contenu

Avant de commencer

  • Nous vous recommandons d'utiliser le dernier build Corona pour votre intégration. Le SDK Vungle Android et iOS version 5.3.0 est disponible à partir du build quotidien Corona 2017.3154.
  • Le plugin Corona Vungle pour iOS prend en charge iOS 8 et supérieur, limité par le SDK Corona.
  • Le plugin Corona Vungle pour Android prend en charge Android 4.0.3 (Ice Cream Sandwich - API version 15) et supérieur, limité par le SDK Corona.
  • Le plugin Corona Vungle pour Android prend en charge Amazon OS 5.4 et version supérieure, ajouté à partir du build quotidien 2017.3124.
  • Téléchargez votre exemple d'application : https://github.com/Vungle/Corona-Plugin/tree/sdk5.

Étape 1 : Mettre à jour build.settings

Ajoutez l'entrée suivante au tableau des plugins dans build.settings. Lorsqu'il est ajouté, le SDK se connecte au serveur pour intégrer le plugin du SDK Vungle 5+ pendant la phase de construction :

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

Pour Android uniquement

Pour Android, les permissions suivantes sont automatiquement ajoutées lorsque vous utilisez ce plugin :

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

Une fois que vous avez ajouté les services Google Play, ajoutez les autorisations suivantes à AndroidManifest. Vungle utilise ces informations pour proposer sur mesure la meilleure publicité disponible à l'utilisateur.

androidPermissions = {
"android.permission.ACCESS_COARSE_LOCATION",
"android.permission.ACCESS_FINE_LOCATION" /
},

Étape 2 : Ajouter le code

Initialiser le SDK

Remarque : un emplacement par défaut est créé automatiquement pour chaque application. Vous devez fournir son ID de référence de l'emplacement lors de l'étape d'initialisation que vous envisagiez ou non de profiter de ses fonctions. Si vous créez plusieurs emplacements, fournissez tous les ID de référence.

Nous vous recommandons d'initialiser le SDK dès que l'application démarre afin de lui donner suffisamment de temps pour télécharger les actifs de la publicité pour l'emplacement mis en cache automatiquement. L'initialisation du SDK exige les éléments suivants :

  • importation des publicités Vungle
  • ID d'application
  • ID de référence pour tous les emplacements que vous utiliserez dans votre application

Vous pouvez trouver ces ID sur le tableau de bord Vungle (reportez-vous à la section Définition et rapport des emplacements).

Exemple de code :

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])

Lorsque le SDK est initialisé avec succès, il appelle l'événement suivant :

event.type == "adAvailable"

Lorsque le SDK Vungle est initialisé, il demande automatiquement une publicité pour l'emplacement que vous avez sélectionné comme mis en cache automatiquement dans le tableau de bord Vungle. Nous vous recommandons de sélectionner les emplacements les plus consultés pour la mise en cache automatique.

Lorsque la publicité est mise en cache avec succès, l'événement adAvailable est appelé avec l'ID de référence de l'emplacement correspondant à votre emplacement mis en cache automatiquement. Pour l'emplacement mis en cache automatiquement, cette méthode est appelée uniquement lorsque la disponibilité d'une publicité passe de true à false ou de false à true. Le SDK continuera de demander une publicité pour l'emplacement mis en cache automatiquement. Pour tous les autres emplacements, cette méthode de fonction de rappel est appelée en cas d'" échec du chargement " (adAvailable renvoie NON dans ce cas).

Charger une publicité pour un emplacement

Pour les emplacements différents de ceux mis en cache automatiquement, appelez la méthode ads.load() pour charger une publicité. Elle prend une chaîne d'ID de référence de l'emplacement comme argument et tente de charger une publicité pour cet emplacement uniquement lorsque ads.load() est envoyé et que la publicité n'est pas disponible pour cet emplacement.

ads.load( "PLMT_1” )

Remarque : cette méthode est uniquement utilisée pour les emplacements différents de ceux mis en cache automatiquement, car les publicités mise en cache automatiquement sont chargées immédiatement après avoir joué la publicité mise en cache au préalable.

Jouer une publicité pour un emplacement

Après avoir attendu la fin du téléchargement des actifs de la publicité, vous pouvez jouer la publicité en appelant ads.show(). Vous devez vérifier si une publicité est prête pour cet emplacement en appelant event.adPlayble avant d'essayer de jouer une publicité.

Exemple de code :

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

Gestion de l'événement

Vous pouvez transmettre des écouteurs d'événements à ads.init() en configurant l'écouteur avant l'initialisation. Voici la liste des écouteurs d'événements disponibles.

  • adStart
    type : adStart
    placementID : ID de référence de l'emplacement
    isError : true si une publicité ne peut pas être jouée ; false si une publicité a débuté

  • adLog
    type : adLog
    message : message d'activité de la publicité

  • adInitialize
    type : adInitialize 

  • adAvailable
    type : adAvailable
    placementID : ID de référence de l'emplacement
    isAdPlayable : true si une publicité est disponible en lecture ; sinon false

  • adEnd
    type : adEnd
    placementID : ID de référence de l'emplacement
    didDownload : true si l'utilisateur a cliqué sur le bouton de téléchargement ; sinon false
    completedView : true si l'utilisateur a regardé 80 % ou plus de la vidéo ; sinon false

  • vungleSDKlog
    type : vungleSDKlog
    message : message d'événement du SDK

Exemple de code :

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

Options de personnalisation

La méthode ads.show() peut également accepter un dictionnaire des options pour personnaliser l'expérience de lecture de la publicité.

Clé

Valeur

Description

alertTitle

alertText

alertContinue

emplacement

Chaîne

Vous pouvez personnaliser un message à afficher aux utilisateurs lorsqu'ils tentent de fermer la vidéo répondant au mécanisme d'incitation avant qu'elle ne soit terminée. (Les publicités récompensées sont parfois nommées publicités répondant au mécanisme d'incitation ; les deux termes font toujours référence au même type de publicité. Dans le code SDK et dans notre API de création, nous utilisons le terme « répondant au mécanisme d'incitation ».)

Remarque : ce paramètre s'applique uniquement aux publicités Vungle standard. Pour les publicités Dynamic Template, la même personnalisation est disponible sur le tableau de bord.

isAutoRotation

Bool

Pour Android, si true (par défaut), la publicité vidéo pivotera automatiquement avec l'orientation du périphérique. Si false, elle utilisera l'orientation préférée de la publicité.

Pour iOS, reportez-vous à la clé d'orientation ci-dessous.

isSoundEnabled

Bool

Si true (par défaut), le son sera activé pendant la lecture de la publicité vidéo, sous réserve des réglages sonores de l'appareil. Si false, la lecture vidéo commencera en mode muet. Notez que l'utilisateur peut activer ou désactiver le son pendant la lecture.

immersive

Bool

Pour Android uniquement, active ou désactive le mode immersif sur les appareils KitKat.

large

Bool

Pour iOS uniquement, dessine des boutons plus gros qui contrôlent les fonctions de la publicité comme l'option muet ou ferme.

orientation

Integer

Pour iOS uniquement, définissez 4 pour paysage, 0 pour portrait ou 5 pour pivoter automatiquement.


Exemple de code :

if (platform == "Android") then
    options = {
        placementId = placements[i],
        isAutoRotation = isAutoRotate,
        immersive = isImmersive,
        isSoundEnabled = not isMuted
    }
else
    options = {
        placementId = placements[i],
        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

ads.show(options)
Vous avez d’autres questions ? Envoyer une demande

Commentaires