iOS JPortrait SDK 集成文档
最近更新:2022-11-22

iOS JPortrait SDK 集成文档

画像SDK

极光画像服务为您提供专业的用户画像能力,您的移动应用里集成了极光画像SDK后,会收集一些必要的信息通过SDK上传到我们的服务器,用于计算生成用户画像。您的服务器通过调用极光提供的服务端API,可以查询相关画像信息。我们在此收集使用的个人信息包括:

  1. 设备参数、系统信息及设备标识符:设备标识符将被用于生成唯一的用户标识。设备参数和系统信息有助于我们帮助您标识不同的终端用户,并根据不同设备信息进行对应的适配,从而提供准确的产品服务,如应用用户运营场景,分析不同用户的运营效果。

  2. 网络信息与位置信息:网络信息有助于我们帮助您判定您的终端用户的网络状态,从而提供如仅在wifi下预加载内容的服务,如广告预加载,减少移动流量的损耗;位置信息有助于我们帮助您提供更符合您的用户偏好的内容和服务,您可以根据需要选择是否开通位置权限,如您拒绝,我们将无法收集您的终端用户的位置信息,可能会影响对您的用户偏好分析的准确度。

您可以通过开发者文档的说明选择使用极光画像服务,当您不再使用此项服务时,您可以按照开发者文档的说明取消此项服务的接入。

接入配置

IDFA

极光提供画像idfa和noidfa 两个版本,请注意选择版本集成。 idfa 版本是标准版,默认自动采集 IDFA 数据, noidfa 版本不自动采集。极光建议开发者使 idfa 版本。当然,如果开发者不想使⽤ IDFA 或者担忧采集 IDFA 而未集成任何广告服务遭到 Apple 拒绝,请使用 noidfa 版本。

注意事项

App在提交苹果审核时,对“此App是否使用广告标识符(IDFA)?”,需要选择“是”,并且需要根据App使用广告情况,勾选以下选项: 在App内投放广告 -- 确认是的话需要勾选 标明此App安装来自先前投放的特定广告 -- 确认是的话需要勾选 标明此App中发生的操作来自先前投放的广告 -- 确认是的话需要勾选 添加SDK到工程中

选择 1: Cocoapods 以导入1.0.0为例

如果使用标准版本

pod 'JCore' , '3.3.1' //必须要在3.3.1版本以上 pod 'JPortrait' // 必选项
          pod 'JCore' , '3.3.1' //必须要在3.3.1版本以上
pod 'JPortrait' // 必选项

        
此代码块在浮窗中显示


注:如果无法导入最新版本,请执行 pod repo update master 这个命令来升级本机的 pod 库,然后重新 pod 'JPortrait' ​
如果使用无IDFA版本 ​

pod 'JCore', '3.3.1-noidfa' // 必选项 pod 'JPortrait', '1.0.0-noidfa' // 必选项
          pod 'JCore', '3.3.1-noidfa'    // 必选项
pod 'JPortrait', '1.0.0-noidfa'    // 必选项

        
此代码块在浮窗中显示


选择 2:手动导入

在极光官网下载最新 SDK 请在自己的工程中导入libs文件夹下的SDK文件: JPortraitService.h 为工程添加相应的Frameworks,需要为项目添加的Frameworks如下 AdSupport.framework(获取 IDFA 需要;如果不使用 IDFA,请不要添加) CoreLocation.framework CFNetwork.framework CoreFoundation.framework libresolv.tbd libz.tbd libc++.1.tbd CoreTelephony.framework SystemConfiguration.framework Security.framework CoreGraphics.framework libsqlite3.tbd MobileCoreServices.framework jcore-ios-x.x.x.a jcore版本 3.3.1及其以上 JPortrait-ios-x.x.x.a

配置-ObjC

设置工程 TARGETS -> Build Settings -> Other Links Flags, 设置 -ObjC

右键打开工程plist文件,加入以下代码,位置信息数据用于画像分析,您可选择集成以下权限<非必选>

NSLocationAlwaysAndWhenInUseUsageDescription NSLocationAlwaysUsageDescription NSLocationWhenInUseUsageDescription This app requires location services to work
              <key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
    <string></string>
    <key>NSLocationAlwaysUsageDescription</key>
    <string></string>
    <key>NSLocationWhenInUseUsageDescription</key>
    <string>This app requires location services to work</string>

        
此代码块在浮窗中显示

SDK接口说明

  1. JPortraitService.h,包含SDK所有接口
  2. JPortrait提供JPortrait与JPortrait-noidfa两个库选择,根据是否需要idfa进行选择。

SDK初始化

  • + setupWithConfig:(JPortraitConfig * )config;

    • 接口说明:
      • 初始化接口
    • 参数说明
      • config 配置类
    • 调用示例:
JPortraitConfig *config = [[JPortraitConfig alloc] init]; config.appKey = @"AppKey copied from JiGuang Portal application"; // 如需使用 IDFA 功能请添加此代码并在初始化配置类中设置 advertisingId NSString *idfaStr = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString]; config.advertisingId = idfaStr; [JPortraitService setDebug:YES]; config.completionBlock = ^(NSError *_Nullable error){ if(!error){ NSLog(@"初始化成功"); }else{ NSLog(@"初始化失败 result:%@", error.description); } }; [JPortraitService setupWithConfig:config];
              JPortraitConfig *config = [[JPortraitConfig alloc] init];
    config.appKey = @"AppKey copied from JiGuang Portal application";
    // 如需使用 IDFA 功能请添加此代码并在初始化配置类中设置 advertisingId
    NSString *idfaStr = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];
    config.advertisingId = idfaStr;
    [JPortraitService setDebug:YES];
    config.completionBlock =  ^(NSError *_Nullable error){
        if(!error){
            NSLog(@"初始化成功");
        }else{
            NSLog(@"初始化失败 result:%@", error.description);
        }
    };
    [JPortraitService setupWithConfig:config];

        
此代码块在浮窗中显示

SDK设置debug模式

  • + (void)setDebug:(BOOL)enable;
    • 接口说明:
      • 开启debug模式
    • 参数说明
      • enable 是否开启debug模式
[JPortraitService setDebug:YES];
              [JPortraitService setDebug:YES];

        
此代码块在浮窗中显示

JPortraitConfig类

应用配置信息类。以下是属性说明:

参数名称 参数类型 参数说明
appKey NSString 极光系统应用唯一标识,必填
channel NSString 应用发布渠道,可选
advertisingId NSString 广告标识符,可选
isProduction BOOL 是否生产环境。如果为开发状态,设置为NO;如果为生产状态,应改为YES。可选,默认为NO
completionBlock Block 初始化回调,如有错误,会返回异常信息
文档内容是否对您有帮助?

Copyright 2011-2022, jiguang.cn, All Rights Reserved. 粤ICP备12056275号-13 深圳市和讯华谷信息技术有限公司

在文档中心打开