SDK接入与初始化

SDK接入与初始化

准备工作

1.打开项目工程

启动 Xcode, 打开您之前创建的 Xcode 项目工程

2.添加应用信息

接入方需要提供 App 的相关信息用于鉴权。

2.1 提供应用的 BundleId

选择应用的 Target -> General -> Bundle Identifier

2.2 在开发者中心添加个验应用

在开发者中心提交BundleId等信息后即可获取APPID等参数。

配置SDK

CocoaPods 集成方式

1. 安装 CocoaPods

安装方式简单 , Mac 下都自带 ruby,使用 ruby 的 gem 命令即可下载安装:

$ sudo gem install cocoapods
$ pod setup
2. 准备Podfile

使用时需要新建一个名为 Podfile 的文件(若已存在该文件不需要重新创建),如下格式,将依赖的库名字依次列在文件中即可:

target 'YourTargetName' do
    platform :ios, "7.0"
    pod 'GYSDK'
end

注意事项:

(1) 在 App 内投放广告,获取 IDFA 可通过苹果审核。

(2) App 内无广告,但由于先前投放的特定广告,可参考如下勾选,通过苹果审核。

勾选如图:

3. 完成 GYSDK 导入

将编辑好的 Podfile 文件放到你的项目根目录中,执行如下命令即可:

$ cd "<path/to/project>"
$ pod install

Xcode集成方式

我们提供的一个 SDK 开发工具包,包含了 iOS SDK 的全部所需资源。

1. 解压缩后的文件目录结构

GySdkDemo:SDK 演示 Demo,能更好的展示个验 SDK 功能点。

GySdkLib:

  • 包含集成 SDK 所需的 Framework 库。

  • 注意事项:

(1)、在 App 内投放广告,获取 IDFA 可通过苹果审核。

(2)、App 内无广告,但由于先前投放的特定广告,可参考如下勾选,通过苹果审核。

勾选如图:

注意: 需添加 AdSupport.framework 库支持

2. 资源内容图示

注意:
GeYanSdk.framework 使用 lipo 工具将
支持 i386、x86_64、arm64、armv7 的代码打包到了一起,所以这个库将同时支持 simulator 和 device,支持 iOS 版本为 7.0 及以上。

3. 个验 SDK framework 库设置

将 GySdkLib 目录拷贝到项目工程目录下,导入 GySdkLib 目录下的 GeYanSdk.framework 文件。

4. 添加依赖库 (必须,如下图)

添加系统库支持:

  • libz.tbd
  • libc++.tbd
  • libsqlite3.0.tbd
  • AdSupport.framework
  • CoreFoundation.framework (Optional)

一键认证功能仅支持9.0以上设备,低于9.0的设备一键认证将不再生效并返回错误信息

5. 设置 Other Linker Flags

找到主工程的 target -> Build Setting -> Linking -> Other Linker Flags,将其设置为 -ObjC(如图所示):

SDK初始化

初始化接口

接口说明

该接口用于在 App 运行时启动个验 SDK,

/**
 *  该接口用于在 App 运行时启动个验 SDK
 *
 *  @param aAppId appid
 */

+ (void)startWithAppId:(NSString *)aAppId withCallback:(GyCallback)callback;

参数

参数 参数说明
aAppId 应用标识,可在开发者中心查看
callback 结果回调

请求示例


#import <GeYanSdk/GeYanSdk.h>
//如果使用的是个推的合并包,导入如下:
//#import <GTSDK_FULL/GeYanSdk.h>
#define kGyAppID @"XXXXXXXX"

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    [GeYanSdk startWithAppId:kGyAppID withCallback:^(BOOL isSuccess, NSError *error, NSString *gyUid) {

    }];
    return YES;
}

获取gyuid

gyuid 会在 SDK 进行初始化成功后, 直接返回

/**
 *  初始化个验 SDK
 *
 *  @param aAppId appid
 */
+ (void)startWithAppId:(NSString *)aAppId withCallback:(GyCallback)callback;

// AppDelegate
[GeYanSdk startWithAppId:kGyAppID withCallback:^(BOOL isSuccess, NSError *error, NSString *gyUid) {

}];

销毁 SDK 接口

/**
 *  销毁 SDK
 */
 + (void)destroy;

状态码

请参考状态码汇总说明

文档中心搜索