Ecrans

  • iOS
  • watchOS
  • tvOS
 

Pour bien débuter

Une fois votre marqueur initialisé, vous pouvez débuter le marquage de vos écrans.

Dans le cas d’un projet Swift, veillez à importer le module Tracker (ou tvOSTracker / watchOSTracker si votre target est une tvOSTracker / watchOSTracker) dans votre ViewController.

Déclarez une variable de type Tracker (ou AutoTracker) dans votre ViewController

import UIKit
import Tracker

class ViewController: UIViewController {
    let tracker: Tracker = ATInternet.sharedInstance.defaultTracker
    
    override func viewDidLoad() {
        super.viewDidLoad()
    }
    
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
}
#import "Tracker/Tracker-Swift.h"

@interface ViewController ()
@property (nonatomic, strong) Tracker *tracker;
@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    
    self.tracker = [ATInternet sharedInstance].defaultTracker;
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end

 

Marquage

Pour marquer un écran, le tracker expose une propriété screens.

Deux solutions s’offrent à vous pour marquer un écran :

  • Définir un ou plusieurs marquages et envoyer le(s) hit(s) au moment souhaité
  • Envoyer directement un marquage d’écran

Pour cela, la propriété screens de la classe Tracker propose une méthode add.
Cette méthode permet d’ajouter un marquage d’écran qui pourra être envoyé au moment souhaité (e.g. viewDidLoad, viewWillAppear …).

La méthode add renvoie un objet de type Screen. Pour envoyer les informations définies, vous devrez appeler manuellement la méthode sendView de votre objet Screen ou appeler la méthode dispatch du Tracker.

 

Exemples de marquage

  1. Marquage d’un écran :
    override func viewWillAppear(_ animated: Bool) {
        tracker.screens.add("Home").sendView()
    }
    - (void)viewWillAppear:(BOOL)animated {
        [[self.tracker.screens addWithName:@"Home"] sendView];
    }
  2. Marquage d’écran avec un niveau 2 :
    override func viewWillAppear(_ animated: Bool) {
        let myHomeScreen = tracker.screens.add("Home")
        myHomeScreen.level2 = 1 // Set a level 2 ID for myHomeScreen
        myHomeScreen.sendView()
    }
    - (void)viewWillAppear:(BOOL)animated {
        Screen *myHomeScreen = [tracker.screens add:@"Home"];
        myHomeScreen.level2 = 1; // Set a level 2 ID for myHomeScreen
        [myHomeScreen sendView];
    }
  3. Marquage d’écran avec chapitrage :
    override func viewWillAppear(_ animated: Bool) {
        tracker.screens.add("Today News", chapter1: "Home", chapter2: "News").sendView()
    }
    - (void)viewWillAppear:(BOOL)animated {
       [[self.tracker.screens add:@"Today News" chapter1:@"Home" chapter2:@"News"] sendView];
    }
  4. Marquage d’un écran avec ajout d’un objet personnalisé :
    override func viewWillAppear(_ animated: Bool) {
        let screen = tracker.screens.add()
        screen.customObjects.add(["lng": "fr"])
        screen.sendView()
    }

    Pour l’ajout d’objets personnalisés dans vos hits, veillez à importer l’entête « ATCustomObject.h »

    - (void)viewWillAppear:(BOOL)animated {
        Screen *screen = [[tracker screens] add];
        [screen.customObjects addDictionary:@{@"lng":@"fr"}];
        [screen sendView];
    }
  5. Marquage d’un écran avec utilisation du dispatcher :
    override func viewWillAppear(_ animated: Bool) {
        let screen = tracker.screens.add()
        screen.customVars.add(1, value: "fr", type: CustomVar.CustomVarType.Screen)
        screen.sendView()
    }

    Pour l’ajout de variables personnalisés dans vos hits d’écrans, veillez à importer l’entête « ATCustomVar.h »

    - (void)viewWillAppear:(BOOL)animated {
        Screen *screen = [[tracker screens] add];
        [screen.customVars add:1 value:@"fr" type:CustomVarTypeScreen];
        [self.tracker dispatch];
    }
  6. Marquage d’un écran avec un nom défini via un CustomObject (le nom sera traité via DataManager)

    override func viewWillAppear(_ animated: Bool) {
        let screen = tracker.screens.add()
        screen.customObjects.add(["screenName": "Home"])
        screen.sendView()
    }
    - (void)viewWillAppear:(BOOL)animated {
        Screen *screen = [[tracker screens] add];
        [screen.customObjects addDictionary:@{@"screenName": @"Home"}];
        [[self.tracker.screens add] sendView];
    }
  7. Marquage d’un panier :
    override func viewWillAppear(animated: Bool) {
        let screen = tracker.screens.add("Home")
        screen.cart = tracker.cart.set("myCart")
        screen.sendView()
    }
    - (void)viewWillAppear:(BOOL)animated {
        Screen* screenCart = [tracker.screens add:@"screenCart"];
        screenCart.cart = [tracker.cart set:@"cart"];
        [screenCart sendView];
    }
 

Classe Screen

 

Propriétés

NomTypeValeur par défautDescription
nameStringChaîne videObtient ou définit le nom de l’écran
chapter1String?nilObtient ou définit le premier chapitre
chapter2String?nilObtient ou définit le second chapitre
chapter3String?nilObtient ou définit le troisième chapitre
actionEnumAction.ViewObtient ou définit le type d’action
level2Int0Obtient ou définit l’identifiant du niveau 2
isBasketScreenBoolfalseIndique que l’écran affiche le contenu d’un panier (dans le cas de l’utilisation de l’option SalesTracker)
customObjectsCustomObjectsCustomObjectsPermet d’ajouter toutes sortes d’informations via des dictionnaires
customVarsCustomVars CustomVars Indicateurs d’application permettant d’associer des informations à l’activité de l’utilisateur pendant l’utilisation de son application
aisleAislenilPermet de marquer vos rayons de produits
customTreeStructureCustomTreeStructurenilPermet de créer une arborescence personnalisée de votre application
publishers

PublisherImpressions

PublisherImpressionsPermet de marquer vos publicités
selfPromotions

SelfPromotionImpressions

SelfPromotionImpressionsPermet de marquer vos campagnes d’auto promotion
locationLocationnilPermet d’ajouter les données de géolocalisation (latitude, longitude)
campaignCampaignnilPermet de marquer vos différents types de campagnes
internalSearchInternalSearchnilPermet de marquer le moteur de recherche interne à votre application
orderOrdernilpermet de marquer les commandes effectuées
cartCartnilPermet d’envoyer le contenu du panier dans votre hit d’écran
 

Méthodes

NomType de retourDescription
sendViewvoidEnvoi le hit d’écran
 

Cet article vous a-t-il été utile ?

Dernière mise à jour : 13/03/2018