多语言展示
当前在线:1156今日阅读:138今日分享:34

教你如何快速集成CIA易验证SDK(Android版)

CIA易验证(原CIA身份验证)是北京科能腾达为广大移动开发者提供的一种身份验证工具,开发者可以使用此工具实现用户注册时的验证、找回密码等功能。CIA易验证通过信令交互技术完成验证,验证效率更高,可以替代短信验证码,该工具得到了广大开发者的认同,本文将教你如何快速集成CIA易验证SDK。
工具/原料
1

一台装有Android开发环境的电脑

2

下载最新版CIA-SDK-Android工具包

3

下载最新CIA易验证SDK集成指南(Android)

方法/步骤
1

SDK功能说明1)架构设计

2

2)主要功能本SDK主要提供以下功能接口1、 初始化服务:初始化SDK,以便后续的验证操作。2、 请求验证:发起一个验证手机号的请求。这里会有两种情况:i)   本机手机号:用户输入的手机号码是本机号码,这种情况无需用户操作,SDK会自动完成验证;ii) 非本机手机号:用户输入的手机号码不是本机号码,这时候会进入“输入验证码模式”,该手机号码所在的手机收到一个呼入电话,需要用户输入该呼入电话的后4位号码作为验证码。3、 获取验证码:针对“请求验证”中的第2种情况——即需要手动输入验证码的情况。为了更好的提示用户,可以调用SDK的获取验证码(呼入的电话号码)来提示用户哪个号码将会呼入。4、 校验验证码:校验用户输入的验证码是否正确。

3

开发前准备1)运行环境可运行于Android 2.1(API Level 7)及以上版本。2)账户申请及权限开通1、获取方式开打CIA易验证官网注册账户,并登录到开发者后台。

4

2、获取appId 和 authKey进入开发者后台。

5

使用SDK开发应用添加SDK到APP工程1、 创建一个Android Project2、 在该工程下创建一个libs文件夹3、 将cia-sdk-VERSION.jar拷贝到刚刚创建的libs文件夹中。4、 将上述jar包添加到工程的Java Build Path。5、 将so目录下的相关so文件添加到工程中。a)       提示:so提供了armeabi、armeabi-v7a、mips、x86版本,请根据需要添加,如果使用了其他so库,请保证所有文件夹下都有相同的so文件。6、 在自定义Application中进行初始化调用。

6

7、 AndroidManifest.xml中声明必须的权限,复制如下代码(图一)8、 AndroidManifest.xml中可选的权限,SDK会自动挂断来电,用户无感知。(图二)9、 AndroidManifest.xml中注册必须的Service(图三)10、 混淆配置需要添加(没有使用混淆忽略此步)(图四)

7

调用API1、开始请求验证a)  CIAService. startVerification(String phoneNumber, VerificationListener listener);2、等待Listener回调,参考监听器。3、如果进入验证码模式,需要校验用户输入的验证码。a) CIAService. verifySecurityCode(String code, VerificationListener listener);4、如果用户中途关闭了页面,需要取消当前验证a) CIAService.cancelVerification();API说明类

8

API目前SDK提供以下接口

9

1、初始化SDKa) init(Context context, String appId, String authKey);i. context:上下文环境ii. appId:开发者后台注册的appIdiii. authKey:开发者后台生成的authKey 2、开始验证a)startVerification(String phoneNumber, VerificationListener listener)i. phoneNumber:需要验证的手机号码ii. listener:验证状态监听器,查看状态码 3、获取验证码a) getSecurityCode ();i. 返回值为呼入的电话号码(其中后四位为****形式),返回值的一个可能示例为:****,该返回值用于向用户显示“提示语”。该方法在验证码模式下调用。显示给用户的提示语,需要开发者自行编写,可参见下图中的一个实例描述:(图一)4、校验验证码a) verifySecurityCode (String code, VerificationListener listener);i.  code:用户输入的验证码ii. listener:验证码校验结果监听器,查看状态码5、取消验证a) cancelVerification();i.  用户中途关闭了页面,需要取消当前的验证请求,调用该方法的时候不需要判断是否有请求存在,该方法内部只在有验证请求的情况下取消验证。6、验证成功后,获取真实的四位验证码a) getRealSecurityCode ();i.  返回真实的四位验证码。注:该方法只在验证成功之后有返回值。

10

监听器VerificationListener接口提供了以下回调方法(图一)1、onStateChange (int status, String msg, String transId);a)       status:状态码(参考验证状态码)b)       msg:文字描述c)       transId:本次验证的业务流水号,可用于后台查询验证状态

11

验证状态码(图一)CIAService类中定义了一些静态常量表示验证状态码startVerification开始验证方法回调(图二)注:验证失败(101):比如手机号码格式错误,手机信号不好等。       请求错误(131):比如没有网络连接等,一般需要开发者提前判断。verifySecurityCode校验验证码方法回调注: 请求异常(111):比如没有网络连接等,一般需要开发者提前判断。

12

后台查询接口(图一)返回结果(图二){'transId':'业务流水号','status':'验证状态'}

推荐信息