1. 開啟全埋點

SDK 初始化前,設定 SAConfigOptions 實體的 autoTrackEventType 屬性可以設定需要開啟的全埋點類型:

// 可根據需求進行組合
options.autoTrackEventType = SensorsAnalyticsEventTypeAppStart |
							 SensorsAnalyticsEventTypeAppEnd |
							 SensorsAnalyticsEventTypeAppClick |
							 SensorsAnalyticsEventTypeAppViewScreen;
CODE


2. 事件的忽略與補充

對於全埋點中 App 頁面瀏覽和 App 元素點擊,開啟全埋點後,SDK 也支援透過設定忽略部分頁面或控制元件的採集。

2.1. 忽略頁面的瀏覽事件

// 該方法支援多次呼叫,對合集進行忽略
[[SensorsAnalyticsSDK sharedInstance] ignoreAutoTrackViewControllers:@[@"MyViewController",
																	   @"BaseViewController"]];
CODE

2.2. 忽略某個控制元件的點擊事件

button.sensorsAnalyticsIgnoreView = YES;
CODE

2.3. 忽略某類控制元件的點擊事件

// 該方法支援多次呼叫,對合集進行忽略
[[SensorsAnalyticsSDK sharedInstance] ignoreViewType:[MyButton class]];
[[SensorsAnalyticsSDK sharedInstance] ignoreViewType:[MyView class]];
CODE

如果沒有開啟全埋點,但是想採集部分頁面的瀏覽或部分控制元件的點擊事件,SDK 也有相應的接口支援程式碼觸發 App 頁面瀏覽和 App 元素點擊事件。

2.4. 手動觸發頁面的瀏覽事件

// 可在 viewDidAppear: 中呼叫程式碼進行觸發
[[SensorsAnalyticsSDK sharedInstance] trackViewScreen:self.childViewControllers[0]];
CODE

2.5. 手動觸發控制元件的點擊事件

[[SensorsAnalyticsSDK sharedInstance] trackViewAppClick:button];
CODE

神策分析點擊圖、可視化全埋點功能,只支援全埋點方式觸發的 App 點擊事件。

3. 屬性的補充與修改

如果在使用全埋點 App 頁面瀏覽和 App 元素點擊時遇到如下問題:

· 需要給控制元件或頁面增加自定義資訊
· 部分預設屬性未採集到,如圖片按鈕採集不到 $element_content 屬性,頁面未採集到 $title 屬性
· 採集的預設屬性不符合業務需求

則需要您在程式碼中對全埋點採集的屬性進行手動設定,SDK 會使用程式碼中設定值對全埋點屬性進行補充或覆蓋。

3.1. 頁面設定自定義資訊

透過實作 - getTrackProperties 協議方法給頁面設定自定義屬性:

// 1. UIViewController 遵循 SAAutoTracker 協議
// 2.- getTrackProperties 協議方法中回傳自定義的頁面資訊
	- (NSDictionary *)getTrackProperties {
	return @{@"$title": @"首頁",
	@"type": @"vendor"};
}
CODE

3.2. 頁面設定來源($referrer)資訊

如果需要在 App 瀏覽頁面事件中增加當前頁面的來源資訊,可以透過實作 - getScreenUrl: 回傳一個自定義的頁面標識:

// 1. UIViewController 遵循 SAScreenAutoTracker 協議
// 2.- getScreenUrl 協議方法中回傳自定義的頁面標識
	- (NSString *)getScreenUrl {
	return @"sa://page/product_detail";
}
CODE

3.3. 控制元件設定自定義屬性

繼承自 UIView 的控制元件,可透過 sensorsAnalyticsViewProperties 設定自定義資訊:

homeBtn.sensorsAnalyticsViewProperties = @{@"$element_content": @"首頁"};
CODE

3.4. cell 設定自定義屬性

cell 存在重用機制,不能直接設定 sensorsAnalyticsViewProperties 屬性,需要使用如下方法進行設定:

// 1. 給 tableView 或 collection 設定 sensorsAnalyticsDelegate
self.tableView.sensorsAnalyticsDelegate = self;

// 2. sensorsAnalyticsDelegate 中實作相應方法並回傳自定義屬性
-(NSDictionary *) sensorsAnalytics_tableView:(UITableView *)tableView autoTrackPropertiesAtIndexPath:(NSIndexPath *)indexPath {
return @{@"customProperty":@"MyValue"};
}
CODE