Publicités on-site
- iOS
- watchOS
- tvOS
Avant-propos
Le SDK AT Internet propose la mesure de vos publicités in-app afin d’évaluer leurs performances.
L’objectif est de mesurer les « clics » et les impressions des campagnes de publicité d’auto-promotion mais également de campagnes affichées sur votre app pour un tiers, puis de les analyser.
Afin de vous assurer de la bonne mesure de la campagne Auto-Promotion, il est également nécessaire de vérifier que la campagne est bien déclarée dans l 'interface Configuration > Campagnes marketing.
Pour bien débuter
Une fois votre marqueur initialisé, vous pouvez débuter le marquage de vos publicités in-app.
Dans le cas d’un projet Swift, veillez à importer le module SmartTracker (ou tvOSTracker / watchOSTracker si votre target est une Apple TV / Apple watch) dans votre ViewController. Dans le cas d’un projet Objective-C, veillez à importer les entêtes SmartTracker-Swift.h
Marquage
Pour marquer vos publicités, le tracker expose deux propriétés publishers et selfPromotions selon le type de publicité à mesurer.
Ces deux propriétés exposent à leur tour deux méthodes :
- add
- sendImpressions
La méthode add permet d’ajouter un marqueur de publicité et de le mettre en attente d’envoi. Cette méthode renvoie un objet de type Publisher ou SelfPromotion selon le cas.
Pour envoyer les informations définies, vous devrez appeler la méthode sendTouch ou sendImpression de votre objet, en fonction du type d’action effectuée par l’utilisateur ou appeler la méthode dispatch du Tracker.
Attention, l’appel aux méthodes sendTouch et sendImpression, modifie la propriété action de l’objet.
La méthode sendImpressions permet d’envoyer toutes les informations de publicités dont l’action est définie comme Impression.
L’objet screen propose aussi de marquer des impressions. Pour tout autre type de publicités, on utilisera les méthodes du tracker décrites ci-dessus.
Exemples de marquage
- Marquage d’une impression d’une publicité pour un tiers
import UIKit import Tracker class ViewController: UIViewController { let tracker: Tracker = ATInternet.sharedInstance.defaultTracker override func viewDidLoad() { super.viewDidLoad() } override func viewWillAppear(animated: Bool) { tracker.publishers.add("[ad1]").sendImpression() } }
#import "ViewController.h" #import "SmartTracker/SmartTracker-Swift.h" @interface ViewController () @property (nonatomic, strong) Tracker* tracker; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; } - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; [[self.tracker.publishers add:@"[ad1]"] sendImpression]; } @end
- Marquage d’un « clic » sur une publicité pour un tiers
@IBAction func touchAd(sender: UIButton) { ATInternet.sharedInstance.defaultTracker.publishers.add("[ad1]").sendTouch() }
- (IBAction)touchAd:(UIButton *)sender { [[[ATInternet sharedInstance].defaultTracker.publishers add:@"[ad1]"] sendTouch]; }
- Marquage d’une impression d’une campagne d’auto-promotion
import UIKit import Tracker class ViewController: UIViewController { let tracker: Tracker = ATInternet.sharedInstance.defaultTracker override func viewDidLoad() { super.viewDidLoad() } override func viewWillAppear(animated: Bool) { tracker.selfPromotions.add(1).sendImpression() } }
#import "ViewController.h" #import "SmartTracker/SmartTracker-Swift.h" @interface ViewController () @property (nonatomic, strong) Tracker* tracker; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; } - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; [[self.tracker.selfPromotions add:1] sendImpression]; } @end
- Marquage d’un « clic » sur une campagne d’auto-promotion
@IBAction func touchAd(sender: UIButton) { ATInternet.sharedInstance.defaultTracker.selfPromotions.add(1).sendTouch() }
- (IBAction)touchAd:(UIButton *)sender { [[[ATInternet sharedInstance].defaultTracker.selfPromotions add:1] sendTouch]; }
- Marquage de plusieurs publicités et envoie des impressions
50 impressions peuvent être mesurées au maximum par page
import UIKit import Tracker class ViewController: UIViewController { let tracker: Tracker = ATInternet.sharedInstance.defaultTracker override func viewDidLoad() { super.viewDidLoad() } override func viewWillAppear(animated: Bool) { let ad1 = tracker.publishers.add("[ad1]") ad1.creation = "[creation]" ad1.variant = "[variant]" ad1.format = "[120x40]" ad1.generalPlacement = "[generalPlacement]" ad1.detailedPlacement = "[detailedPlacement]" ad1.advertiserId = "1[advertiserId]" ad1.url = "[http://avertiser-url.com]" tracker.publishers.add("[ad2]") let ad3 = tracker.publishers.add("[ad3]") ad3.creation = "[creation]" ad3.variant = "[variant]" tracker.publishers.sendImpressions() } }
#import "ViewController.h" #import "SmartTracker/SmartTracker-Swift.h" @interface ViewController () @property (nonatomic, strong) Tracker* tracker; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; self.tracker = [ATInternet sharedInstance].defaultTracker; } - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; Publisher *ad1 = [self.tracker.publishers add:@"[ad1]"]; ad1.creation = @"[creation]"; ad1.variant = @"[variant]"; ad1.format = @"[120x40]"; ad1.generalPlacement = @"[generalPlacement]"; ad1.detailedPlacement = @"[detailedPlacement]"; ad1.advertiserId = @"1[advertiserID]"; ad1.url = @"[http://avertiser-url.com]"; [self.tracker.publishers add:@"[ad2]"]; Publisher *ad3 = [self.tracker.publishers add:@"[ad3]"]; ad3.creation = @"[creation]"; ad3.variant = @"[variant]"; [self.tracker.publishers sendImpressions]; } @end
- Marquage de plusieurs campagnes d’auto-promotion et envoie des impressions
import UIKit import Tracker class ViewController: UIViewController { let tracker: Tracker = ATInternet.sharedInstance.defaultTracker override func viewDidLoad() { super.viewDidLoad() } override func viewWillAppear(animated: Bool) { let sp1 = tracker.selfPromotions.add(1) sp1.format = "[120x40]" sp1.productId = "p1" tracker.selfPromotions.add(2) let sp3 = tracker.selfPromotions.add(3) sp3.productId = "p3" tracker.selfPromotions.sendImpressions() } }
#import "ViewController.h" #import "SmartTracker/SmartTracker-Swift.h" @interface ViewController () @property (nonatomic, strong) Tracker* tracker; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; self.tracker = [ATInternet sharedInstance].defaultTracker; } - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; SelfPromotion *sp1 = [self.tracker.selfPromotions add:1]; sp1.format = @"[120x40]"; sp1.productId = @"p1"; [self.tracker.selfPromotions add:2]; SelfPromotion *sp3 = [self.tracker.selfPromotions add:3]; sp3.productId = @"p3"; [self.tracker.selfPromotions sendImpressions]; } @end
- Marquage de publicités et de campagnes d’auto-promotion et utilisation du dispatcher
import UIKit import Tracker class ViewController: UIViewController { let tracker: Tracker = ATInternet.sharedInstance.defaultTracker override func viewDidLoad() { super.viewDidLoad() } override func viewWillAppear(animated: Bool) { tracker.publishers.add("[ad1]") tracker.publishers.add("[ad2]") tracker.selfPromotions.add(1) // This will send one hit with publishers and selfpromotion impressions tracker.dispatch() } }
#import "ViewController.h" #import "SmartTracker/SmartTracker-Swift.h" @interface ViewController () @property (nonatomic, strong) Tracker* tracker; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; self.tracker = [ATInternet sharedInstance].defaultTracker; } - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; [self.tracker.publishers add:@"[ad1]"]; [self.tracker.publishers add:@"[ad2]"]; [self.tracker.selfPromotions add:1]; // This will send one hit with publishers and selfpromotion impressions [self.tracker dispatch]; } @end
- Marquage de publicités et campagnes d’auto-promotion et ajout des informations sur un écran
import UIKit import Tracker class ViewController: UIViewController { let tracker: Tracker = ATInternet.sharedInstance.defaultTracker override func viewDidLoad() { super.viewDidLoad() } override func viewWillAppear(animated: Bool) { tracker.publishers.add("[ad1]") tracker.publishers.add("[ad2]") tracker.selfPromotions.add(1) tracker.screens.add("Home").sendView() } }
#import "ViewController.h" #import "SmartTracker/SmartTracker-Swift.h" @interface ViewController () @property (nonatomic, strong) Tracker* tracker; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; self.tracker = [ATInternet sharedInstance].defaultTracker; } - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; [self.tracker.publishers add:@"[ad1]"]; [self.tracker.publishers add:@"[ad2]"]; [self.tracker.selfPromotions add:1]; [[self.tracker.screens add:@"Home"] sendView]; } @end
- Marquage d’une impression sur un écran
import UIKit import Tracker class ViewController: UIViewController { let tracker: Tracker = ATInternet.sharedInstance.defaultTracker override func viewDidLoad() { super.viewDidLoad() } override func viewWillAppear(_ animated: Bool) { let screen = tracker.screens.add("Home") _ = screen.publishers.add("[ad1]") screen.sendView() } }
#import "ViewController.h" #import "SmartTracker/SmartTracker-Swift.h" @interface ViewController () @property (nonatomic, strong) Tracker* tracker; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; self.tracker = [ATInternet sharedInstance].defaultTracker; } - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; Screen *screen = [[self.tracker screens] add:@"Home"]; [screens.publishers add:@"[ad1]"]; [screen sendView]; } @end