-
Notifications
You must be signed in to change notification settings - Fork 0
Screens b414d6
Once your tag is initialised, you can start tagging your screens.
In the case of a Swift project, be sure to import the Tracker (or TrackerExtension if your target is an extension) module in your ViewController. In the case of an Objective-C project, be sure to import the headers Tracker-Swift.h
Declare a Tracker variable in your 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.
}
@endTo tag a screen, the tracker exposes a screens property.
Two solutions are available to tag a screen:
- Define one or several tagging and send the hit(s) at the desired moment
- Send screen tagging directly
To do this, the screens property of the Tracker class offers an add method.
This method enables the addition of screen tagging which can be sent at the desired moment (e.g. viewDidLoad, viewWillAppear
).
The add method sends back a Screen-type object. To send the defined information, you must manually call the sendView method of your Screen method, or call the Tracker�s dispatch method.
-
Tagging a screen:
override func viewWillAppear(_ animated: Bool) {
tracker.screens.add("Home").sendView()
}- (void)viewWillAppear:(BOOL)animated {
[[self.tracker.screens addWithName:@"Home"] sendView];
}-
Tagging a screen with a level 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];
}-
Tagging a screen with chapters:
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];
}-
Tagging a screen with the addition of a custom object:
override func viewWillAppear(_ animated: Bool) {
let screen = tracker.screens.add()
screen.customObjects.add(["lng": "fr"])
screen.sendView()
}- (void)viewWillAppear:(BOOL)animated {
Screen *screen = [[tracker screens] add];
[screen.customObjects addDictionary:@{@"lng":@"fr"}];
[screen sendView];
}-
Tagging a screen with use of dispatcher:
override func viewWillAppear(_ animated: Bool) {
let screen = tracker.screens.add()
screen.customVars.add(1, value: "fr", type: CustomVar.CustomVarType.Screen)
screen.sendView()
}- (void)viewWillAppear:(BOOL)animated {
Screen *screen = [[tracker screens] add];
[screen.customVars add:1 value:@"fr" type:CustomVarTypeScreen];
[self.tracker dispatch];
}-
Tagging a screen with a name defined via a CustomObject (the name will be treated 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];
}-
Tagging a basket :
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 = [self.tracker.screens add:@"cart"];
screenCart.cart = [self.tracker.cart set:@"mycart"];
[screenCart sendView];
}-
Data API
- Data flow
- Advice optimizations data flow
- Error codes data flow
- Faq data flow
- General information data flow
- Technical information data flow
- Reporting API v3
- Getting started
- Methods
- Parameters
- Technical information
- REST API
- Campaigns
- Custom variables
- Getting started rest
- Methods rest
- Response structure parameters rest
- Fixed periods
- Parameters compatibility
- Relative periods
- Structure of the response
- “code” parameter
- “columns” parameter
- “evo” parameter
- “filter” parameter
- “include” parameter
- “lng” parameter
- “max-results” parameter
- “page-num” parameter
- “period” parameter
- “period” parameter: “H” v. “He” & “MN” v. “MNe”
- “retention” parameter
- “segmentdesc” parameter
- “segment” parameter
- “sep” parameter
- “sort” parameter
- “space” parameter
- Technical specifications rest
- Data flow
-
Data collection
- Android
- Advanced features
- Campaigns
- Changelog
- Content
- Ecommerce
- Getting started
- Users
- Apple
- Advanced features
- Campaigns
- Changelog
- Content
- Ecommerce
- Getting started
- Users
- General
- Cddc renew staging process
- Changelog
- Craft your hit
- Encoded parameters
- Server side cookie management
- Supported taggings
- Tagging deletion
- Utilisation of dispatch sdks
- JavaScript
- Advanced features
- Campaigns
- Changelog
- Content
- Ecommerce
- Getting started
- Partners javascript
- Users
- Piano Analytics
- Event tagging piano analytics
- Getting started piano analytics
- Piano analytics tagging
- Feeding piano analytics with as2 tagging
- Tagging custom properties sdk
- Android