Utilisez ce guide pour réaliser une intégration rapide de notre SDK dans votre application et commencer à la monétiser. Les échantillons de code de ce guide sont présentés en C#, mais l'application modèle est fournie en C#, C++, Visual Basic et DirectX+XAML depuis notre dépôt GitHub.
Avant de commencer
Configuration nécessaire
- L'intégration nécessite un compte Vungle. Créez un compte Vungle si vous ne l'avez pas encore fait, puis créez une nouvelle application Windows Universal Windows dans votre compte. Consultez la section Ajouter vos applications et vos placements de notre article Utilisation du tableau de bord de développeur pour savoir comment configurer les placements dans le tableau de bord Vungle.
- Vous devez utiliser Visual Studio 2015 si vous développez pour Windows 8.1 car Visual Studio 2017 ne prend plus en charge cette version.
- Le bouton Retour est pris en charge sur les appareils mobiles, mais pas sur les PC (clavier). Ce cas de figure peut entraîner des comportements et une expérience utilisateur différents selon les versions UWP.
- Dans le tableau de bord, basculez l'application en mode Actif si aucune publicité n'est retournée en mode Test.
Télécharger le SDK
Si vous optez pour l'intégration manuelle, vous pouvez télécharger le SDK Vungle pour Windows ici : https://publisher.vungle.com/sdk/sdks/windows.
Référence : exemple d'application
Reportez-vous à l'exemple d'application fourni en tant qu'intégration :https://github.com/Vungle/Windows-SDK/tree/master.
Étape 1. Intégrer le SDK Vungle à votre projet
Il existe deux façons d'ajouter Vungle à votre projet Visual Studio : utiliser NuGet (recommandé) ou une intégration manuelle.
Option 1. Intégration de NuGet (recommandé)
- Dans Visual Studio, faites un clic-droit sur le nom de votre projet dans Explorateur de solutions, puis sélectionnez Gérer les packages NuGet.
- Cliquez sur Parcourir, saisissez « Vungle », puis sélectionnez SDK Vungle.
- Cliquez sur Installer.
Option 2. Intégration manuelle
- Téléchargez le SDK Vungle pour Windows depuis le tableau de bord de Vungle.
- Extrayez l'archive.
- Dans Visual Studio, créez un nouveau projet Universal Windows à l'aide du bon modèle pour votre application et votre langage de programmation.
- Ajoutez une référence à votre projet au fichier SDK Vungle pour Windows que vous avez téléchargé.
Le SDK Vungle contient deux fichiersVungleSDK.windmd
: un pour le développement de Windows 10, et un autre pour le développement de Windows 8.1. Utilisez le SDK correct du répertoire extrait,Win10
ouWin81
. - Assurez-vous que votre projet possède la capacité
internetClient
dans le fichierpackage.appxmanifest
. La capacité Internet (client) est activée par défaut quand vous créez un nouveau projet. Vous pouvez le vérifier dans Visual Studio ou en édition manuelle.- Pour vérifier la capacité
internetClient
dans Visual Studio :- Dans Visual Studio, cliquez deux fois sur
appxmanifest
dans Explorateur de solutions. - Sélectionnez Capacités.
- Confirmez que l'option Internet (client) est cochée.
- Dans Visual Studio, cliquez deux fois sur
- Ouvrez le fichier
package.appxmanifeset
et ajoutezinternetClient
à la sectionCapabilities
pour assurer la capacitéinternetClient
par le biais d'une édition manuelle :<Capabilities>
...
<Capability Name="internetClient" />
...
</Capabilities>
- Pour vérifier la capacité
Étape 2. Importer l'espace de nommage VungleSDK
Importez l'espace de nommage VungleSDK
comme suit :
avec VungleSDK ;
Étape 3. Obtenir une instance VungleAd
À partir du SDK Vungle v6.3.0, l'instance VungleAd
ne prend qu'un seul paramètre : l'ID de votre application Vungle.
VungleAd sdkInstance;
string appID = “app_id”;
sdkInstance = AdFactory.GetInstance(appID);
Dans l'exemple ci-dessus, remplacez appId
par l'ID de votre application Vungle. Nous recommandons de suivre ces étapes d'initialisation dès que votre application a chargé les composants indispensables afin que la mise en cache automatique puisse débuter.
Pour le SDK Vungle v6.2.0 et versions antérieures, l'instance VungleAd
reçoit deux paramètres : une chaîne pour l'ID de l'application Vungle et un tableau de chaînes pour les ID des placements. Vous ne pouvez utiliser que les ID des placements que vous avez déjà inclus lorsque vous avez obtenu l'instance.
sdkInstance = AdFactory.GetInstance(appID, placementList);
Étape 4. Ajouter le code
Créez et enregistrez des gestionnaires d'événements
Le SDK Windows lance de nombreux évènements que vous pouvez gérer par la programmation. Vous pouvez utiliser ces gestionnaires pour contrôler l'application, par exemple pour interrompre/reprendre la lecture de la musique de fond.
Remarque relative au thread d'IU
Les écouteurs d'événements sont exécutés sur un thread en arrière-plan ; ainsi, toute interaction de l'interface utilisateur ou toute mise à jour provenant d'un écouteur d'événements doit être transmise au thread principal de l'interface utilisateur avant son exécution. Voici un moyen d'y parvenir :
await this.Dispatcher.RunAsync(CoreDispatcherPriority.Normal,
new DispatchedHandler(() =>
{ // This block will be executed in the UI thread
} );
Diagnostic
Le gestionnaire d'événements est appelé lorsque le SDK est sur le point d'imprimer les journaux de diagnostic.
Exemple de code :
//Register event handler sdkInstance.Diagnostic += SdkInstance_Diagnostic; ... // Event handler called when SDK wants to print diagnostic logs private void SdkInstance_Diagnostic(object sender, DiagnosticLogEvent e) { System.Diagnostics.Debug.WriteLine("Diagnostic - "
+ e.Level + " "
+ e.Type + " "
+ e.Exception + " "
+ e.Message); }
// DEPRECATED - Use SdkInstance_OnAdEnd() instead
private void SdkInstance_OnVideoView(object sender, AdViewEventArgs e) { }
OnAdPlayableChanged
Créez un gestionnaire d'événements pour l'événement OnAdPlayableChanged
. Ce gestionnaire d'événements est appelé lorsque l'état de disponibilité de la publicité change. Attendez que ce gestionnaire d'événements exécute une action quand une publicité devient disponible après avoir chargé une publicité pour le placement. Vous pouvez identifier le placement qui a lancé l'événement en vérifiant e.Placement
.
// Event handler for OnAdPlayableChanged event private async void SdkInstance_OnAdPlayableChanged(object sender, AdPlayableEventArgs e) {
if (e.AdPlayable == true)
{ // e.Placement - placement ID in string // Run asynchronously on the UI thread await CoreApplication.MainView.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, new DispatchedHandler(() => methodToRun(e.Placement)));
} }
Enregistrez ce gestionnaire d'événements pour l'événement OnAdPlayableChanged
.
sdkInstance.OnAdPlayableChanged += SdkInstance_OnAdPlayableChanged;
OnInitCompleted
Ce gestionnaire d'événements est appelé immédiatement après l'initialisation du SDK. Vous pouvez vérifier s'il existe une publicité téléchargée depuis une session antérieure ou charger une publicité pour les placements.
Exemple de code :
//Register event handler sdkInstance.OnInitCompleted += SdkInstance_OnInitCompleted; ... // OnInitCompleted // e.Initialized - true if initialization succeeded, false if failed // e.ErrorMessage - reason for failure when e.Initialized is false private async void SdkInstance_OnInitCompleted(object sender, ConfigEventArgs e) { var placementsInfo = "OnInitCompleted: " + e.Initialized; // Initilization was success if (e.Initialized == true) { // Print out list of placements for (var i = 0; i < e.Placements.Length; i++) { placementsInfo += "\n\tPlacement" + (i + 1) + ": " + e.Placements[i].ReferenceId; if (e.Placements[i].IsAutoCached == true) placementsInfo += " (Auto-Cached)"; } } // Initilization failed else { placementsInfo += "\n\t" + e.ErrorMessage; } System.Diagnostics.Debug.WriteLine(placementsInfo); await this.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, new DispatchedHandler(() => NotifyInitialization(e.Initialized))); }
OnAdStart
Ce gestionnaire d'événements est appelé avant la lecture d'une publicité. Vous pouvez exécuter des actions telles que l'interruption de la musique de fond.
Exemple de code :
//Register event handler sdkInstance.OnAdStart += SdkInstance_OnAdStart; ... // OnAdStart // e.Id - Vungle app ID in string // e.Placement - placement ID in string private void SdkInstance_OnAdStart(object sender, AdEventArgs e) { System.Diagnostics.Debug.WriteLine("OnAdStart(" + e.Id + "): " + e.Placement); }
OnAdEnd
Ce gestionnaire d'événements est appelé lorsque l'utilisateur ferme l'écran de fin et que le contrôle est restitué à votre application. Si l'une des valeurs IsCompletedView
ou CallToActionClicked
est true, alors l'utilisateur a visionné la publicité ou cliqué sur le bouton de téléchargement dans la publicité. Dans ce cas, si la publicité donne lieu à une récompense, alors l'utilisateur doit être récompensé. Vous pouvez exécuter des actions telles que la reprise des fonctionnalités de l'application.
Exemple de code :
//Register event handlers sdkInstance.OnAdEnd += SdkInstance_OnAdEnd; ... // OnAdEnd // e.Id - Vungle app ID in string // e.Placement - placement ID in string // e.IsCompletedView- true when 80% or more of the video was watched // e.CallToActionClicked - true when the user has clicked download button on end card // e.WatchedDuration - DEPRECATED private void SdkInstance_OnAdEnd(object sender, AdEndEventArgs e) { System.Diagnostics.Debug.WriteLine("OnVideoEnd(" + e.Id + "): " + "\n\tPlacement: " + e.Placement + "\n\tIsCompletedView: " + e.IsCompletedView + "\n\tCallToActionClicked: " + e.CallToActionClicked + "\n\tWatchedDuration: " + e.WatchedDuration); }
Intégrer des formats publicitaires
Complétez votre intégration SDK pour chaque format publicitaire que vous prévoyez d'afficher dans votre application. Consultez nos instructions pour chaque format publicitaire :
- Intégrer les publicités interstitielles et récompensées
- Intégrer des bannières publicitaires
- Intégrer des publicités MREC
Personnalisez davantage vos publicités
Suivez les instructions de notre article sur les paramètres avancés pour affiner l'intégration de votre application avec des options de configuration supplémentaires, telles que le RGPD, la mise en œuvre du CCPA et de nombreux autres paramètres.