SDK基本信息
SDK名称 | 版本号 | md5值 | 包名 |
QuickTracking iOS SDK | 最新版本:1.5.8.PX 更新日志:iOS SDK更新日志 | 637921107a258712aa26d5ba61f3d611 | com.quicktracking.sdk.ios.QTCommon |
1 快速集成
在QuickTracking后台,为每一个App生成了专属的集成代码,可以根据产品内的引导进行集成。注意,需要检查目前是否已经使用了友盟+SDK,如果已经使用,请及时设置更改SDK文件路径,具体设置方式请参考本文档中1.6章节部分内容。
1.1 进入产品后台
1.2 找到应用归属组织
1.3 找到应用
1.4 点击“去集成”
1.5 点击后可以获取专属集成代码
1.6 检查是否与友盟+SDK冲突
注意,需要检查目前是否已经使用了友盟+SDK,如果已经使用,请务必设置更改SDK文件路径。
更改SDK文件路径方式:
已经集成了友盟+SDK,现在需要集成QT SDK:在QT和友盟+的所有代码最前面增加(至少早于收数域名)[QTConfigure resetStorePath];
已经集成了QT SDK,现在需要集成友盟+SDK:在QT和友盟+的所有代码最前面(至少早于收数域名)增加[UMConfigure.resetStorePath];
如果不按照上述的逻辑调用,则会使友盟+SDK与QT SDK共同使用一个存储路径,导致日志混乱。具体逻辑为:先调用的哪个SDK初始化方法,就重新设置另外一个SDK的文件路径,比如先初始化的友盟+SDK,就调用 [QTConfigure resetStorePath];,如果是先初始化的QT SDK,就需要调用[UMConfigure resetStorePath];
2 集成代码明细
如果因为特定原因,无法抵达上述页面,需要观看文档才可以进行集成,具体集成代码如下:
2.1 参数准备
appkey:在应用列表中获取
收数域名:在“管理控制台-采集信息”模块中获取
2.2 引入SDK
在终端执行pod setup命令,拉取最新pod库时间较长。
$ pod setup
Cocoapods集成可灵活配置所需SDK,如工程target名为“QuickTrackingDemo”,可选添下面的SDK,如在项目根目录的Podfile的格式:
target 'QuickTrackingDemo' do
pod '<Quick Tracking SDK名>'
end
说明 :由于 pod search 命令对新增项目可能出现无法找到的情况,建议直接使用 pod update 命令进行直接更新。
Quick Tracking基础库
//QuickTracking 统计分析 SDK
pod 'QTCommon', '~> 1.5.8.PX'//需要指定版本号
//可在项目中加入 “基础库-日志库” 中的 UMCCommonLog 进行开发调试。
pod 'UMCCommonLog'
说明:UMCCommonLog 为开发阶段进行调试SDK及相关功能使用,可在发布 App 前移除
2.3 手动集成
依赖库:
CoreTelephony.framework 获取运营商标识
libz.tbd 数据压缩
libsqlite3.tbd 数据缓存
SystemConfiguration.framework 判断网络状态
libc++.tbd C++ 标准库
工程配置:
选择SDK功能组件并下载,解压.zip文件得到相应组件包(例如:QTCommon.framework等)。
Xcode
File
—>Add Files to"Your Project"
,在弹出Panel选中所下载组件包->Add
。(注:选中“Copy items if needed”)添加依赖库,在项目设置
target
-> 选项卡General ->Linked Frameworks and Libraries如下:
Targets->BuildSettings 中, Other Linker Flags增加-ObjC,⼀定要添加此项,注意是⼤写C,不是⼩写c。
2.4 引入头文件
#import <QTCommon/QTCommon.h>
#import <UMCommonLog/UMCommonLogManager.h> //引入日志包时需要添加
3 埋点验证配置
添加您的 URL Scheme 到项目中,URL Scheme 位于项目设置 target ->选项卡 Info ->URL Types。填入的scheme:atm.yourappkey。在AppDelegate中调用函数[QTMobClick handleUrl:url]来接收 URL
AppDelegate调用:
- (BOOL)application:(UIApplication *)application openURL:(nonnull NSURL *)url options:(nonnull NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options
{
if ([QTMobClick handleUrl:url]) {
return YES;
}
return YES;
}
SceneDelegate调用:
- (void)scene:(UIScene *)scene willConnectToSession:(UISceneSession *)session options:(UISceneConnectionOptions *)connectionOptions {
for (UIOpenURLContext *context in connectionOptions.URLContexts) {
[QTMobClick handleUrl:context.URL];
}
}
- (void)scene:(UIScene *)scene openURLContexts:(NSSet<UIOpenURLContext *> *)URLContexts {
[QTMobClick handleUrl:URLContexts.allObjects.firstObject.URL];
}
4 IDFA说明
【Quick Tracking】SDK默认采集idfa标识,用来更准确的分析核对数据。对于应用本身没有获取idfa的情况,建议将应用提交至AppStore时按如下方式配置:(以避免被苹果以“应用不含广告功能,但获取了广告标识符IDFA”为由拒绝上架。)
Quick Tracking SDK不主动申请IDFA获取权限,若您的App本身就没有申请IDFA权限,Quick Tracking是不会触发客户端权限申请的弹窗的。