使用Xcode15的开发者请注意:
由于Xcode15在target<12下会存在Network.framework Crash问题。
解决方案一:用户需要升级使用GTCommonSDK 3.1.0.0+, SDK新增在Info.plist中添加GT_MinimumOSVersion字段,填写当前app的target值。对应的通知扩展的Info.plist也需要同样的修改。
解决方案二:修改target>=12。 苹果官网明确Xcode15最低支持iOS12+。
target 'OneID' do
platform :ios, "12.0"
pod 'GTCommonSDK'
pod 'OneID'
end
注意:
需要集成GTCommonSDK 3.1.5.0及以上版本。
需要集成ZXSDK 3.2.5.39379及以上版本。
pod GTCommonSDK会默认依赖ZXSDK,开发者需要注意一下ZXSDK的版本号。
$ cd "<path/to/project>"
$ pod install
SdkLib
目录拷贝到项目工程目录下,导入SdkLib
文件夹:libc++.tbd
libz.**tbd**
libsqlite3.tbd
libresolv.tbd
Security.framework
MobileCoreServices.framework
SystemConfiguration.framework
CFNetwork.framework
CoreTelephony.framework
CoreLocation.framework
AdSupport.framework(如果需要采集idfa请添加此库并按照苹果要求进行申请)
找到主工程的 target -> Build Setting -> Linking -> Other Linker Flags,在$(inherited)下面添加 -ObjC
在此之外,您还可以配置以下可选权限,以便使用地理位置等相关的标签和特征,如居住城市标签等用于人群圈选和画像洞察,为精细化运营提供必要数据支撑。
可在项目的Info.plist中配置如下:
<!-- 允许访问网络 -->
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
<!-- 卓信ID -->
<key>ZX_CHANNEL_ID</key>
<string>C01-GEztJH0JLdBC</string>
<!-- IDFA -->
<key>NSUserTrackingUsageDescription</key>
<string>请求IDFA描述</string>
<!-- 定位相关 -->
<key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
<string>根据业务需要,始终允许访问位置信息</string>
<key>NSLocationAlwaysUsageDescription</key>
<string>根据业务需要,始终允许访问位置信息</string>
<key>NSLocationUsageDescription</key>
<string>根据业务需要,永不允许访问位置信息</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>根据业务需要,使用应用期间允许访问位置信息</string>
接口描述:
启动OneID SDK
接口定义:
/**
初始化启动接口
@param appId 开发者中心生成的 appId
*/
[OneID startSdkWithAppId:@"appId" delegate:self];
接口说明:
在 AppDelegate didFinishLaunchingWithOptions
方法中:通过平台分配的 APPID
启动统计 SDK。
参数 | 参数说明 |
---|---|
appId |
应用标识 APPID |
接口示例:
#import <OneID/OneID.h>
#define kGcAppId @"xxxxxxx"
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// 启动OneID SDK
[OneID startSdkWithAppId:kGcAppId delegate:self];
return YES;
}
接口描述:
SDK默认不打印信息,发布版本时请关闭debug模式,以免影响性能。
接口示例:
/// SDK启动成功返回OneID信息
- (void)OneIDFetch:(NSDictionary *)info error:(NSError *)error {
/*
info内容示例:
"oneAID": "I-xxxxxxxxfae28cfc4c63708xxxxxxxx", //其中oneAID前缀 I-表示是iOS系统
"requestId": "xxx"
*/
NSLog(@"OneIDFetch:%@ error:%@", info, error);
}
以上文档对您是否有帮助?