百宝箱开放平台 ✖️ 友盟+SDK接入准备 ✖️ IOS 集成说明

80 阅读3分钟

本文将介绍如何实现百宝箱智能体与友盟+ iOS 应用进行集成。

1. 手动集成

1.1. 依赖库

CoreTelephony.framework    获取运营商标识
    libz.tbd  数据压缩
    libsqlite.tbd  数据缓存
SystemConfiguration.framework  判断网络状态

1.2. 配置步骤

  1. 选择 SDK 功能组件并下载,解压.zip文件得到相应组件包(例如:UMCommon.framework、UMPush.framework等)。
  2. XcodeFile —> Add Files to "Your Project",在弹出Panel选中所下载组件包->Add。(注:选中“Copy items if needed”)
  3. 添加依赖库,在项目设置target -> 选项卡General ->Linked Frameworks and Libraries如下:
  4. Targets->BuildSettings 中 , Other Linker Flags增加-ObjC,⼀定要添加此项,注意是⼤写C,不是⼩写c。

2. 权限声明

请参照以下示例,在 Info.plist文件中完成权限声明。

<key>NSLocationWhenInUseUsageDescription</key>
<string>当前Demo要使用位置权限</string>
<key>NSCameraUsageDescription</key>
<string>当前Demo需要使用相机功能</string>
<key>NSPhotoLibraryAddUsageDescription</key>
<string>当前Demo要访问照片</string>

其中,各配置项说明如下。

配置项必填说明
NSLocationWhenInUseUsageDescription开启“当应用在前台使用时获取位置信息”的权限。若智能体需要LBS位置,请务必开启。
NSCameraUsageDescription开启应用使用设备相机的权限,若智能体需要使用相机时,请务必开启。
NSPhotoLibraryAddUsageDescription开启应用将照片或视频保存到用户相册的权限,若智能体需要文件上传或保存能力时,请务必开启。

3. 初始化 SDK

//UMConfigure 
+(void)initWithAppkey:(NSString*)appKey channel:(NSString*)channel;

//UMAgent
+ (void)sdkInit:(NSString *)appKey;

其中,各参数说明如下。

参数名必填类型说明
appKeyNSString开发者在友盟官网申请的appkey,获取方式可参见:创建友盟App并获取 AppKey
channelNSStringchannel为您应用的推广渠道。channel为nil或@””时,默认会被当作@”App Store”渠道。

关于Channel 渠道使用命名规范如下:

  • 使用规范: 每台设备仅记录首次安装激活的渠道,在其他渠道再次安装不会重复计量。 所以在测试不同的渠道的时候,请使用不同的设备来分别测试,不要改变 UMENG_CHANNEL
  • 命名规范:
    • 以由英文字母、阿拉伯数字、下划线、中划线、空格、括号组成,可以含汉字以及其他明文字符,但是不建议使用中文命名,会出现乱码。
    • 首尾字符不可以为空格。
    • 不要使用纯数字作为渠道ID。
    • 最多256个字符。
    • “unknown” 及其各种大小写形式,作为【友盟+】保留的字段,不可以作为渠道名。

4. 查看日志

可以通过调用如下方法控制 SDK 的运行调试日志是否输出。 SDK 运行调试日志默认关闭,需要用户手动开启。

[UMConfigure setLogEnabled:YES];
[UMAgent enableLogs:YES];

5. 查看集成效果

通过 [UMAgentstartAgent:vc withAgentId:agentId] 方法打开本地智能体页面,需要传入 agentId。

+ (void)startAgent: (UIViewController *)vc withAgentId:(NSString *)agentId

6. demo 工程

📎UAgent_Demo_iOS-main-26349527b2d3ac9ca0c7abc3d429f9e44cf50c40.zip

工程运行效果

打开智能体效果

说明: 工程运行时需要填入的参数如下。