Developers » AS2 tagging » Apple » Contenus de l'application » Gestes
Gestes
- iOS
- watchOS
- tvOS
Pour bien débuter
Une fois votre marqueur initialisé, vous pouvez débuter le marquage des gestes effectués par vos utilisateurs.
Dans le cas d’un projet Swift, veillez à importer le module Tracker (ou TrackerExtension si votre target est une extension) dans votre ViewController.
Déclarez une variable de type AutoTracker (ou Tracker selon votre Target) dans votre ViewController
import UIKit import Tracker class ViewController: UIViewController { let 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 geste, le tracker expose une propriété gestures proposant une méthode add.
Par défaut, cette méthode ajoute un marquage de type « Touch ». Vous pouvez modifier le type d’évènement via la propriété action de l’objet Gesture retourné par la méthode add.
Les différentes actions sont les suivantes :
- Touch : Envoie un hit indiquant qu’un « touch » a eu lieu
- Navigate : Envoie un hit indiquant qu’un élément de navigation a été touché
- Download : Envoie un hit indiquant qu’un téléchargement a été provoqué
- Exit : Envoie un hit indiquant que l’utilisateur a changé de vue ou a quitté l’application
- Search : Envoie un hit indiquant que lutilisateur a cliqué sur un élément dun résultat de recherche
Pour envoyer les informations définies, vous devrez appeler manuellement la méthode sendNavigation, sendExit, sendDownload, sendTouch ou sendSearch de votre objet Gesture ou appeler la méthode dispatch du Tracker.
Attention, l’appel aux méthodes sendNavigation, sendExit, sendDownload, sendTouch et sendSearch, modifie la propriété action de l’objet Gesture.
Exemples de marquage
- Marquage d’un bouton de navigation :
override func prepare(for segue: UIStoryboardSegue, sender: Any?) { tracker.gestures.add("Go to product detail").sendNavigation() }
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { [[self.tracker.gestures add:@"Go to product detail"] sendNavigation]; }
- Marquage d’un bouton de navigation avec chapitrage :
override func prepare(for segue: UIStoryboardSegue, sender: Any?) { tracker.gestures.add("Go to product detail", chapter1: "Products", chapter2: "Cart").sendNavigation() }
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { [[self.tracker.gestures add:@"Go to product detail" chapter1:@"Products" chapter2:@"Cart"] sendNavigation]; }
- Marquage d’un touch sur un bouton :
@IBAction func sayHelloHAL(_ sender: Any) { let sayHello = tracker.gestures.add("Say Hello HAL") sayHello.level2 = 1 sayHello.sendTouch() }
- (IBAction)sayHelloHAL:(UIButton *)sender { Gesture *sayHello = [self.tracker.gestures add:@"Say Hello HAL"]; sayHello.level2 = 1; [sayHello sendTouch]; }
- Marquage d’un touch avec un nom défini via un customObject (le nom sera traité via DataManager)
@IBAction func sayHelloHAL(_ sender: Any) { let sayHello = tracker.gestures.add() let _ = sayHello.customObjects.add(["touchName":"Say Hello HAL"]) sayHello.sendTouch() }
- (IBAction)sayHelloHAL:(UIButton *)sender { Gesture *gesture = [[tracker gestures] add:@"Click"]; [gesture.customObjects addDictionary:@{@"touchName": @"Say Hello HAL"}]; [gesture sendTouch]; }
Classe Gesture
Propriétés
Nom | Type | Valeur par défaut | Description |
---|---|---|---|
name | String | Chaîne vide | Obtient ou définit le nom du geste |
chapter1 | String? | nil | Obtient ou définit le premier chapitre |
chapter2 | String? | nil | Obtient ou définit le second chapitre |
chapter3 | String? | nil | Obtient ou définit le troisième chapitre |
action | Enum | Action.Touch | Obtient ou définit le type d’action |
level2 | Int | 0 | Obtient ou définit l’identifiant du niveau 2 |
customObjects | CustomObjects | CustomObjects | Permet d’ajouter toutes sortes dinformations via des dictionnaires |
Méthodes
Nom | Type de retour | Description |
---|---|---|
sendTouch | void | Envoie un hit indiquant qu’un élément « cliquable » a été touché |
sendNavigation | void | Envoie un hit indiquant qu’un élément de navigation a été touché |
sendDownload | void | Envoie un hit indiquant qu’un téléchargement a été provoqué |
sendExit | void | Envoie un hit indiquant que l’utilisateur a changé de vue ou a quitté l’application |
sendSearch | void | Envoie un hit indiquant que l’utilisateur a « cliqué » sur un élément d’un résultat de recherche |