1. 程式人生 > >個推數據統計產品(個數)iOS集成實踐

個推數據統計產品(個數)iOS集成實踐

輸入 dmi tro sqli flag 保存 news ger 操作

最近業務方給我們部門提了新的需求,希望能一站式統計APP的幾項重要數據。這次我們嘗試使用的是個推(之前專門做消息推送的)旗下新推出的產品“個數·應用統計”,根據官方的說法,個推的數據統計產品通過專業的移動應用數據分析,可以為用戶的應用提供實時數據統計分析服務,包括了解版本質量、渠道狀況、用戶畫像等。數據最後以可視化形式展現,很直觀。我們嘗試了一段時間,發現效果還是很不錯的,這篇文章將為大家介紹如何從零開始快速高效地集成個數iOS SDK

一、登錄賬號並創建應用獲取 APP ID

1、 訪問[個推開發者中心](https://dev.getui.com/dev/#/login),點擊立即註冊:

(也可以從個推官網進入www.getui.com,點擊右上角“開發者中心”。)當然,如果你已經註冊過個推推送的賬號,直接登錄使用即可。

技術分享圖片2、根據個人情況填寫並註冊賬號:

技術分享圖片

3、返回[個推開發者中心](https://dev.getui.com/dev/#/login)使用上個步驟註冊好的賬號登錄,進入開發者平臺面板後,選擇左邊菜單欄的個數·應用統計:

技術分享圖片

4、進入個數·應用統計面板後,選擇右上角的新增應用添加新的應用:

技術分享圖片

5、填寫應用相關信息,勾選iOS,點擊提交新增應用:

技術分享圖片

6、新增應用成功會自動返回應用列表,找到新增的應用,點擊應用配置:

技術分享圖片

7、在配置信息下可以看到

APP ID,將其復制保存,後續集成將會使用到APP ID

技術分享圖片

二、配置個數SDK

個數iOS SDK提供兩種集成方式,分別是CocoaPods集成和Xcode手動集成,兩種集成方式本文都會介紹。在集成SDK時選擇其中一種即可(推薦使用CocoaPods集成)。

三、CocoaPods集成方式

1、安裝CocoaPods

安裝方式很簡單 , Mac下都自帶ruby,使用rubygem命令即可下載安裝:

$ sudo gem install cocoapods

$ pod setup

技術分享圖片

2、準備Podfile

使用時需要新建一個名為Podfile的文件(若已存在該文件則不需要重新創建),如下格式,將依賴的庫名字依次列在文件中即可:

target ‘YourTargetName‘ do

platform :ios, "8.0"

pod ‘GCSDK‘

end

3、完成GCSDK導入

將編輯好的Podfile文件放到你的項目根目錄中,執行如下命令即可:

$ cd "<path/to/project>"

$ pod install

4、使用CocosPods集成SDK後,需要關閉原工程,重新在項目根目錄下打開 yourProjectName.xcworkspace的文件進行後續開發:

四、Xcode 集成方式

1、個數應用統計提供一個 SDK 開發工具包,包含了iOS SDK的全部所需資源,前往個推文檔中心下載,地址:http://docs.getui.com/download.html,選擇個數·應用統計下的iOS端下載SDK資源包 :

技術分享圖片

2、解壓資源包內容可以看到如下文件結構:

技術分享圖片

3、資源包內容詳解

接入文檔/個數集成文檔.pdf : 個數集成文檔;

資源文件/GTCountSDK.h: 個數SDK頭文件

資源文件/libGTCountSDK.a: 個數SDK主包靜態庫

資源文件/libGTCommonSDK.a: 個數SDK工具庫

Demo工程/GTCountDemo/: 個數demo工程

4、註意:libGTCountSDK.alibGTCommonSDK.a 使用lipo工具將

支持i386x86_64arm64armv7的代碼打包到了一起,所以這個庫將同時支持simulatordevice,支持的iOS版本為 7.0 及以上。

5、個數SDK靜態庫設置

右擊添加文件,導入資源文件目錄下的文件。

技術分享圖片

技術分享圖片

6、添加依賴庫(必須,如下圖)

添加系統庫支持:

* libsqlit3.tbd

* libz.tbd

* AdSupport.framework

7、設置 Other Linker Flags

找到主工程的target > Build Setting > Linking > Other Linker Flags,將其設置為-ObjC(如圖所示):

五、初始化並啟動SDK

1、初始化啟動接口的相關信息:

技術分享圖片

2、在項目工程的AppDelegate.m中添加頭文件,使用前面獲取的APP ID初始化並啟動SDK

#import ‘GTCountSDK.h‘

#define kGcAppId @"xxxxxxx"

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

// 啟動個數 SDK

[GTCountSDK startSDKWithAppId:kGcAppId withChannelId:@"appstore"];

// 使用 SDK 實例的 reportStrategy 屬性設置上報策略。

[[GTCountSDK sharedInstance] setReportStrategy:GESHU_STRATEGY_WIFI_ONLY]

// 使用 SDK 實例的 sessionTime 屬性獲取 sessionTime 的值。

NSLog(@"sessionTime %ld",[[GTCountSDK sharedInstance]sessionTime]);

return YES;

}

六、高級功能:自定義事件

自定義事件可以統計某些用戶自定義埋點的發生時間以及次數,例如廣告點擊、短信數量等。通常event_id用於表示某種行為或功能的統計(如統計“發送”按鈕被觸發多少次),而參數則用於標識統計的具體對象(如功能為“下載”的按鈕),由event_idproperties唯一標識一個事件。

自定義事件主要分為兩種:

1)次數統計:統計指定行為被觸發的次數。

2)時長統計:統計指定行為消耗的時間,單位為秒。需要eventBegineventEnd接口成對使用才可生效。

其中每類事件都支持使用properties參數類型。

註意:event_id需要先在個推開發者中心(https://dev.getui.com/)進行配置,才能參與正常的數據統計。event_id不能包含空格或轉義字符,如下:

1、點擊側邊菜單欄事件列表。

技術分享圖片

2、點擊新增事件按鈕。

技術分享圖片

3、根據事件類型分別輸入相應的事件ID以及事件名稱。

技術分享圖片

4、在移動端項目中添加對應事件類型和對應event_id的事件:

@implementation TrackCountEventController

- (IBAction)clickCount:(id)sender {

[GTCountSDK trackCountEvent:@"countid1" withArgs:@{@"ckey1":@"cvalue1"}];

}

-(void) viewDidAppear:(BOOL)animated {

// 為了正確統計,要確保開始和結束接口的參數 self.eventProperty 內存地址是一致的。

self.eventProperty = @{@"key":@"value1"};

[GTCountSDK trackCustomKeyValueEventBegin:@"eid1" withArgs:self.eventProperty];

[super viewDidAppear:animated];

}

- (void)viewWillDisappear:(BOOL)animated {

[GTCountSDK trackCustomKeyValueEventEnd:@"eid1" withArgs:self.eventProperty];

[super viewWillDisappear:animated];

}

@end

七、高級功能:數據上報策略

個數應用統計可自定義數據上報策略,開發者可根據自身應用需求設置,能夠有效控制用戶流量開銷。

1SDK的數據上報策略包括以下 5 種(默認為 GESHU_STRATEGY_PERIOD,周期為 60 分鐘):

技術分享圖片

2、註意:數據上報策略建議在應用啟動時設置。數據上報策略使用以下接口進行設置和查看:

/**

設置上報策略

*/

@property(nonatomic,assign)GeShuStatReportStrategyType reportStrategy;

3WIFI 環境下上報策略

考慮到 WIFI 網絡環境下上報數據的代價較小,因此默認情況在 WIFI 環境下,使用實時上報策略。若要關閉該策略,可以調用以下接口關閉:

/**

智能上報

開啟以後設備接入WIFI會實時上報

否則按照全局策略上報

默認打開

*/

@property (nonatomic, assign)BOOL smartReporting;

4、數據上報策略相關接口

/**

統計上報策略為 BATCH 時,觸發上報時最小緩存消息數,默認32

*/

@property (nonatomic, assign)NSUInteger minBatchReportNumber;

/**

上報策略為 PERIOD 時發送間隔,單位分鐘,默認一天(60分鐘)

*/

@property (nonatomic, assign)NSUInteger periodMinutes;

八、集成 SDK 的應用提交App Store註意事項

1、為了獲取精準的統計結果,需添加AdSupport.framework庫支持,因此在提交App Store時需做以下操作:

(1)App內投放廣告,獲取IDFA可通過蘋果審核。

(2)App內無廣告,但先前投放了特定廣告,可參考如下勾選,通過蘋果審核。

勾選如圖:

技術分享圖片

以上就是我集成個推應用統計產品(個數)的全過程,希望對你有幫助!如果大家有什麽其他問題,我們可以留言區交流。

個推數據統計產品(個數)iOS集成實踐