Erste Schritte mit Vungle SDK v. 5 – Corona

Inhalt

Bevor Sie anfangen

  • Wir empfehlen die Verwendung der aktuellsten Corona-Version für Ihre Integration. Vungle Android und iOS SDK v. 5.3.0 sind ab Corona Daily Build 2017.3154 verfügbar.
  • Das Vungle Corona Plugin für iOS unterstützt iOS 8 und neuer, aufgrund des Corona SDK.
  • Das Vungle Corona Plugin für Android unterstützt Android 4.0.3 (Ice Cream Sandwich - API Version 15) und höher, aufgrund des Corona SDK.
  • Das Vungle Corona Plugin für Android unterstützt Amazon OS 5.4, zusätzlich ab Daily Build 2017.3124.
  • Laden Sie unsere Beispiel-App herunter: https://github.com/Vungle/Corona-Plugin/tree/sdk5.

Schritt 1: Aktualisieren build.settings

Fügen Sie den folgenden Eintrag zur Plugin-Tabelle unter build.settings hinzu. Nachdem der Eintrag hinzugefügt wurde, wird sich das SDK mit dem Server verbinden, um das Vungle SDK 5+ Plugin während der Build-Phase zu integrieren.

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

Nur für Android

Für Android werden die folgenden Berechtigungen automatisch hinzugefügt, wenn dieses Plugin verwendet wird:

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

Nachdem Google Play Services hinzugefügt wurde, geben Sie die folgenden Berechtigungen in AndroidManifest ein. Anhand dieser Informationen optimiert Vungle die Anzeige für den Nutzer.

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

Schritt 2: Fügen Sie den Code hinzu

Initialisieren Sie das SDK

Hinweis: Eine Standard-Platzierung wird automatisch für jede App erstellt. Sie müssen die Referenz-ID dieser Platzierung in diesem Initialisierungsschritt bereitstellen, auch wenn Sie nicht von der Platzierungs-Funktion Gebrauch machen möchten. Bei der Erstellung mehrerer Platzierungen müssen Sie alle Referenz-IDs angeben.

Wir empfehlen Ihnen die Initialisierung des SDK, sobald Ihre App startet, damit dem SDK ausreichend Zeit zum Herunterladen von Assets für die automatisch gecachte Platzierung bleibt. Die Initialisierung des SDK erfordert:

  • Den Import von Vungle Werbungen
  • Anwendungs ID
  • Die Referenz-IDs aller in der App zu verwendenden Platzierungen

Diese IDs finden Sie im Vungle Dashboard (sehen Sie im Abschnitt Einrichtung von und Berichte über Platzierungen nach).

Beispielcode:

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

Sobald das SDK erfolgreich initialisiert wurde, ruft es das folgende Event:

event.type == "adAvailable"

Nachdem das Vungle SDK initialisiert wurde, fordert es automatisch eine Werbung für die Platzierung, die Sie im Vungle Dashboard als automatisch gecacht ausgewählt haben. Wir empfehlen die am häufigsten angesehene Platzierung als Ihre automatisch gecachte Auswahl.

Sobald eine Werbung erfolgreich gecacht wurde, wird das adAvailable-Event mit der Referenz-ID der Platzierung gerufen, die zu Ihrer automatisch gecachten Platzierung passt. Hinweis: Für die automatisch gecachte Platzierung wird die Methode nur gerufen, wenn die Werbungsverfügbarkeit von "true" auf "false" oder von "false" auf "true" wechselt. Das SDK fordert weiterhin eine Werbung für die automatisch gecachte Platzierung an. Bei allen anderen Platzierungen wir die Callback-Methode im Fall von "Load Failed" gerufen (adAvailable gibt in diesem Fall "NO" zurück).

Laden einer Werbung für eine Platzierung

Für alle weiteren Platzierungen neben der automatisch gecachten Platzierung, rufen Sie die ads.load()-Methode, um eine Werbung zu laden. Es akzeptiert den String einer Platzierungsreferenz-ID als Argument und versucht nur dann, wenn ads.load() angegeben ist und für diese Platzierung keine Werbung verfügbar ist, eine Werbung für diese bestimmte Platzierung zu laden.

ads.load( "PLMT_1” )

Hinweis: Diese Methode wird nur für andere Platzierungen als die automatisch gecachten verwendet, da nicht automatisch gecachte Werbungen direkt nach Abspielen der zuvor gecachten Werbung geladen werden.

Abspielen einer Werbung für eine Platzierung

Nach Ausreichend Zeit für den vollständigen Download der Werbe-Assets, können sie die Werbung mit dem Call ads.show() abspielen. Sie sollten überprüfen, ob für diese Platzierung eine Werbung bereit ist, in dem Sie event.adPlayble rufen, bevor Sie das Abspielen einer Werbung versuchen.

Beispielcode:

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

Event Handling

Sie können optionale Event-Listener an ads.init() übergeben, indem Sie die Listener einrichten, bevor die Initialisierung stattfindet. Unten finden Sie die Liste an verfügbaren Event-Listenern.

  • adStart
    type: adStart
    placementID: placement reference ID
    isError: "true", falls eine Werbung nicht abgespielt werden konnte; "false" falls das Abspielen begonnen wurde

  • adLog
    type: adLog
    message: ad activity message

  • adInitialize
    type: adInitialize 

  • adAvailable
    type: adAvailable
    placementID: placement reference ID
    isAdPlayable: "true", falls eine Werbung zum Abspielen verfügbar ist, anderenfalls "false"

  • adEnd
    type: adEnd
    placementID: placement reference ID
    didDownload: "true", falls der Nutzer auf die Download-Schaltfläche geklickt hat, anderenfalls "false"
    completedView: "true" falls der Nutzer mindestens 80 % des Videos angesehen hat, anderenfalls "false"

  • vungleSDKlog
    type: vungleSDKlog
    message: SDK Event-Nachricht

Beispielcode:

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

Anpassungsoptionen

Die Methode ads.show() kann eine Liste verfügbarer Optionen annehmen, um das Werbeerlebnis anzupassen.

Schlüssel

Wert

Beschreibung

alertTitle

alertText

alertContinue

Platzierung

String

Sie können eine Nachricht zur Anzeige bei den Nutzern anpassen, wenn diese versuchen, das belohnte Video vor dem Ende zu schließen. (Belohnte Anzeigen (rewarded ads) werden im Englischen auch manchmal als incentivized bezeichnet; beide Begriffe stehen für dieselbe Art von Werbeanzeige. Im SDK-Code und in unserer Reporting-API verwenden wir den Begriff „incentivized”.)

Hinweis: Diese Einstellung trifft nur auf Standard-Werbungen von Vungle zu. Für dynamische Vorlagen-Werbungen ist die gleiche Anpassung über das Dashboard verfügbar.

isAutoRotation

Bool

Bei Android und im Fall von "true" (standardmäßig) wird das Werbevideo automatisch entsprechend der Ausrichtung des Geräts rotiert. Bei "false" wird die von der Werbung bevorzugte Ausrichtung verwendet.

Sehen Sie sich für iOS den untenstehenden Schlüssel zu den Ausrichtungen an.

isSoundEnabled

Bool

Bei "true" (standardmäßig) wird der Ton entsprechend der Sound-Einstellungen des Gerätes während des Werbevideos aktiviert. Bei "false" ist die Wiedergabe bei Beginn stummgeschaltet. Beachten Sie, dass der Nutzer den Ton während der Wiedergabe aktivieren oder deaktivieren kann.

immersive

Bool

Nur bei Android: Aktiviert oder deaktiviert den immersiven Modus auf KitKat+Geräten.

large

Bool

Nur bei iOS: Zeichnet größere Schaltflächen zur Steuerung von Werbungsfunktionen wie Stummschalten oder Schließen.

Ausrichtung

Integer

Nur bei iOS: für horizontale Ausrichtung auf 4, für vertikale Ausrichtung auf 0 und auf 5 zur automatischen Drehung stellen.


Beispielcode:

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)
Haben Sie Fragen? Anfrage einreichen

Kommentare