数据统计接口文档

数据统计接口文档

1. 初始化服务

+ (void)startSdkWithAppId:(NSString *)appid delegate:(id<OneIDDelegate>)delegate;

参数:

  • appid: 个推登记应用的appid
  • delegate:SDK回调代理

说明:

  • 初始化OneID服务,初始化成功后,通过OneIDFetch:error回调接口返回 OneID 信息。
  • appid 必须正确,否则会导致回调无法接收。
  • 需要集成ZXSDK, 并且要求版本号>=3.2.5.39379

头文件:

  • OneID.h

接口调用示例:

#import <OneID/OneID.h>

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
   // 启动OneID SDK
   [OneID startSdkWithAppId:AppId delegate:self];
   return YES;
 }

请求结果处理示例:

/// SDK启动成功返回OneID信息
- (void)OneIDFetch:(NSDictionary *)info error:(NSError *)error {
    /*
     info内容示例:
     "oneAID": "I-xxxxxxxxfae28cfc4c63708xxxxxxxx", //其中oneAID前缀 I-表示是iOS系统
     "requestId": "xxx"
    */
    NSLog(@"OneIDFetch:%@ error:%@", info, error);
}

2. 场景查询

+ (void)queryLbs:(NSTimeInterval)gpsInterval gpsTimeout:(NSTimeInterval)gpsTimeout;

参数:

  • gpsInterval: GPS有效期设置,可以设置范围为-1 或 [0, 600],单位秒。0:实时获取GPS数据。 -1:只使用系统缓存的GPS数据
  • gpsTimeout: GPS实时定位超时时间设置,可以设置范围为[10, 60],单位秒, 建议设置20

说明:

  • 获取gpsInterval时间间隔内的GPS数据,如果超出间隔则实时获取GPS数据,进行查询场景信息
  • SDK不会主动获取定位权限,需要开发者发起定位授权,SDK会根据当前用户的授权状态来进行查询。
  • 未授权定位\定位失败\定位超时等,都将使用ip进行场景查询。
  • 查询完成后,通过OneIDQueryLbs:error回调接口返回场景信息。

头文件:

  • OneID.h

接口调用示例:

//设置GPS有效期为30秒,超时20秒,进行场景查询
[OneID queryLbs:30 gpsTimeout:20];

//获取系统定位缓存进行场景查询,SDK不会主动获取定位权限和定位数据
[OneID queryLbs:-1 gpsTimeout:20];

请求结果处理示例:

- (void)OneIDQueryLbs:(NSDictionary *)info error:(NSError *)error {
    NSLog(@"OneIDQueryLbs:%@ error:%@", info, error);
}

回调参数:

回调方法OneIDQueryLbs中的info字典示例如下:
requestId: 单次请求ID
sceneInfoList: 场景信息
coarseAddress: 粗略位置
addressCode: 位置代码

{
    "requestId": "xxxxxxxxf0eb4432897d6be2xxxxxxxx",
    "poiSceneInfoList": [  //POI场景信息列表
        {
            "sceneTypeList": [
                {   //一级分类,指该位置所属的场景的类型,如:交通设施服务、购物服务、餐饮服务等。
                    "st1": "餐饮服务"
                 }
            ]
        }
    ],
    "aoiSceneInfoList": [  //AOI场景信息列表
        {
            "sceneTypeList": [
                {   //一级分类,指该位置所属的场景的类型,如:交通设施服务、购物服务、餐饮服务等。
                    "st1": "购物服务"
                }
            ]
        }
    ],
    "sceneInfoList": [  //场景信息列表(POI场景信息列表和AOI场景信息列表都为空时,才会返回此项,准确度较低)
        {
            "sceneTypeList": [
                {    //一级分类,指该位置所属的场景的类型,如:交通设施服务、购物服务、餐饮服务等。
                    "st1": "科教文化服务"
                }
            ]
        }
    ],
    "coarseAddress": "xxxxxx",
    "addressCode": {
         //省Code    
        "province": "450000",
         //市Code    
        "city": "450100",
         //区Code    
        "area": "450108"
    }
}

具体开通联系右侧技术支持,或对应商务

3. 获取缓存OneID

+ (NSDictionary*)oneIDFetchInfo;

说明:

  • 需要先启动SDK,才能获取缓存中的OneID。

头文件:

  • OneID.h

接口调用示例:


NSLog(@"%@", [OneID oneIDFetchInfo]);
/*
  返回值内容示例:
   "oneAID": "I-xxxxxxxxfae28cfc4c63708xxxxxxxx", //其中oneAID前缀 I-表示是iOS系统
  "requestId": "xxx"
 */

4. 获取 SDK 版本号

+ (NSString*)sdkVersion;

返回:

  • NSString*:当前 SDK 版本号字符串

说明:

  • 获取当前 SDK 版本号

头文件:

  • OneID.h

示例:

[OneID sdkVersion];

文档中心搜索

技术
咨询

微信扫一扫

随时联系技术支持

在线
咨询