iOS SDK 集成指南

使用提示

本文是JVerification iOS SDK 标准的集成指南文档。

匹配的 SDK 版本为:v2.0.0及以后版本。

  • 如果您想要快速地测试、请参考本文在几分钟内跑通Demo。
  • 极光认证文档网站上,有相关的所有指南、API、教程等全部的文档。包括本文档的更新版本,都会及时地发布到该网站上。

产品说明

极光认证整合了三大运营商的网关认证能力,为开发者提供了一键登录和号码认证功能,优化用户注册/登录、号码验证体验,提高安全性。

主要场景:

  • 注册
  • 登陆
  • 二次验证

iOS SDK 版本

目前SDK只支持iOS 8以上版本的手机系统。

接入配置

IDFA

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

注意事项

App在提交苹果审核时,对“此App是否使用广告标识符(IDFA)?”,需要选择“是”,并且需要根据App使用广告情况,勾选以下选项:

  • 在App内投放广告 -- 确认是的话需要勾选
  • 标明此App安装来自先前投放的特定广告 -- 确认是的话需要勾选
  • 标明此App中发生的操作来自先前投放的广告 -- 确认是的话需要勾选

添加SDK到工程中

选择 1: Cocoapods 导入 2.6.3

如果使用标准版本(从2.5.0版本开始默认采集IDFA)

    pod 'JCore' // 可选项,也可由pod 'JVerification'自动获取
    pod 'JVerification' // 必选项

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

如果需要安装指定版本则使用以下方式(以2.6.3版本为例):

    pod 'JCore', '2.2.5'    // 可选项,也可由pod 'JVerification'自动获取
    pod 'JVerification', '2.6.3'    // 必选项

如果使用无IDFA版本

如果使用 JCore 2.1.4 及以上版本,使用方式如下(以 JVerification 2.6.3 版本为例,需严格遵循代码顺序):

    pod 'JCore', '2.2.5-noidfa' // 必选项
    pod 'JVerification', '2.6.3'    // 必选项

如果使用 JCore 2.1.4 以下版本,使用方式如下(以 JVerification 2.6.3 版本为例,需严格遵循代码顺序):

    pod 'JCore', '2.1.2'    // 必选项
    pod 'JVerification', '2.6.3'    // 必选项

选择 2:手动导入

  • 在极光官网下载最新 SDK
  • 请在自己的工程中导入libs文件夹下的SDK文件:

    • JVERIFICATIONService.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 * AVFoundation.framework * TYRZSDK.framework * account_login_sdk_noui_core.framework * EAccountApiSDK.framework * ESOneKeyLogin.framework * OAuth.framework * jcore-ios-x.x.x.a jcore版本 2.1.6及其以上 * jverification-ios-x.x.x.a

说明:jcore-ios-x.x.x.a 、jverification-ios-x.x.x.a 、account_login_sdk_noui_core.framework、ESOneKeyLogin.framework、OAuth.framework、TYRZSDK.framework和EAccountApiSDK.framework 在libs文件夹下

工程配置

配置-ObjC

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

配置支持Http传输

右键打开工程plist文件,加入以下代码

    <key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true/>
    </dict>

配置资源

请将演示Demo中JVerificationResource.bundle拖到自己的工程目录下。

接入代码

Objective-C 接入

请将以下代码添加到引用JVERIFICATIONService.h头文件的的相关类中

    //引入JVERIFICATIONService.h头文件
    #import "JVERIFICATIONService.h"
    // 如果需要使用 idfa 功能所需要引入的头文件(可选)
    #import <AdSupport/AdSupport.h>

接入JVerification SDK的应用,必须先初始化JVERIFICATIONService,否则将会无法正常使用,请将以下代码添加到合适的位置

    //如需使用 IDFA 功能请添加此代码并在初始化配置类中设置 advertisingId
    NSString *idfaStr = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];
    JVAuthConfig *config = [[JVAuthConfig alloc] init];
    config.appKey = @"your appkey";
    config.advertisingId = idfaStr;
    [JVERIFICATIONService setupWithConfig:config];

Swift 接入

  • 创建桥接头文件

如果你的Swift工程还未引入过Objective-C文件,需要创建一个以工程名称-Bridging-Header.h文件

  • 配置路径

设置工程 TARGETS -> Build Settings -> Objective-C Bridging Header, 设置桥接文件工程名称-Bridging-Header.h的相对路径

  • 引入头文件

工程名称-Bridging-Header.h文件中引入头文件

//引入JVERIFICATIONService.h头文件
#import "JVERIFICATIONService.h"
// 如果需要使用 idfa 功能所需要引入的头文件(可选)
#import <AdSupport/AdSupport.h>
  • 接入sdk

在需要用到sdk的位置,初始化JVERIFICATIONService

   let adString =  ASIdentifierManager.shared().advertisingIdentifier.uuidString
   let config = JVAuthConfig()
   config.appKey = "your appkey"
   JVERIFICATIONService.setup(with: config)

更多API

其他 API 的使用方法请参考接口文档:iOS SDK API

运行Demo

压缩包附带的 demo 是一个 API 演示例子。你可以将它导入到你的工程,并将你的 AppKey 填入到 demo 的 ViewController 中,设置上Bundle ID然后直接运行起来测试。

Swift Demo 下载:Swift Demo

技术支持

邮件联系:support@jpush.cn


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

Documentation built with MkDocs.