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

Contenu

Avant de commencer

  • Nous vous recommandons d'utiliser la dernière version de Corona pour votre intégration. La version 5.3.2 du SDK Android Vungle et du SDK iOS est disponible à partir du build quotidien 2017.3179 de Corona.
  • 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" / }, 

IMPORTANT : si vous développez avec Corona Enterprise, vous devez inclure la version 4 d'Android Support Library pour réussir l'intégration.

Étape 2 : Ajouter le code

Initialiser le SDK

Remarque : un placement par défaut est créé automatiquement pour chaque application. Vous devez fournir l'ID de référence de son placement lors de l'étape d'initialisation que vous envisagiez ou non de profiter de ses fonctions. Si vous créez plusieurs placements, 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 le placement 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 placements que vous utiliserez dans votre application

Vous trouverez ces ID dans le tableau de bord Vungle (consultez Définition et rapport des placements). Pour la plateforme Amazon, utilisez l'ID d'application Amazon à partir de votre tableau de bord Vungle.

Exemple de code :

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

-- Amazon application ID is under the Android platform
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 le placement que vous avez sélectionné comme mis en cache automatiquement dans le tableau de bord Vungle. Nous vous recommandons de sélectionner les placements 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 du placement correspondant à votre placement mis en cache automatiquement. Pour le placement 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 le placement mis en cache automatiquement. Pour tous les autres placements, 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 placement

Pour les placements 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 du placement comme argument et tente de charger une publicité pour ce placement uniquement lorsque ads.load() est envoyé et que la publicité n'est pas disponible pour ce placement.

ads.load( "PLMT_1” )

Remarque : cette méthode est uniquement utilisée pour les placements 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.

Diffuser une publicité pour un placement

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 ce placement 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 du placement
    isError : true si une publicité n'a pas pu être diffusée, false si une publicité a pu être diffusée

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

  • adInitialize
    type : adInitialize

  • adAvailable
    type : adAvailable
    placementID : ID de référence de placement
    isAdPlayable : true si une publicité est disponible à la lecture, sinon false

  • adEnd
    type : adEnd
    placementID : ID de référence du placement
    didDownload : true si l'utilisateur a cliqué sur le bouton de téléchargement, sinon false
    completedView : true si l'utilisateur a regardé 80 % de la vidéo ou plus, 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

placement

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 sous KitKat ou une version ultérieure.

large

Bool

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

orientation

Integer

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

userTag

Chaîne

Définissez votre ID utilisateur pour récompenser l'utilisateur ayant regardé des publicités rémunérées.

ordinal

Chaîne

Définissez des données ordinales qui suivent le nombre de publicités diffusées au cours d'une session. Des rapports personnalisés sont disponibles sur demande.


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