本文是闪验SDK_Androidv2.3.0版本的接入文档,用于指导SDK的使用方法,默认读者已经熟悉IDE(Eclipse或者AndroidStudio)的基本使用方法,以及具有一定的Android编程知识基础。
a.将build里面的applicationId换成对应的测试包名
b.将签名配置改成您的签名配置
c.将AppId和AppKey换成您在闪验平台创建应用后生成的信息
(1)将开发包拷贝到工程
a.将SDK中libs目录下的aar包拷贝到自己工程的libs目录下,如没有该目录需新建。
b.SDK中jniLibs目录下包含多个so库,分别支持armeabi,armeabi-v7a,arm64-v8a,x86,x86_64等cpu架构,请根据项目情况,选择相应的so库。如果您的项目包含某个abi目录,则复制对应的so文件到您的项目,例如,您的项目中只有armeabi-v7a目录,则只复制jniLibs中的armeabi-v7a文件到您的项目;如果您的项目没有abi目录,请自行创建并复制。
jniLibs所在目录结构如下图:
在app文件夹下的build.gradle的dependencies中配置对应版本的aar依赖并添加repositories,详细代码如下:
repositories{flatDir{dirs'../app/libs'}}dependencies{api(name:'aar包名',ext:'aar')}
(2)配置AndroidManifest.xml文件
在manifest标签内添加必要的权限支持
建议的权限:如果选用该权限,需要在预取号步骤前提前动态申请。
配置权限说明
权限名称
权限说明
使用说明
INTERNET
允许应用程序联网
用于访问网关和认证服务器
ACCESS_WIFI_STATE
允许访问WiFi网络状态信息
ACCESS_NETWORK_STATE
允许访问网络状态
区分移动网络或WiFi网络
CHANGE_NETWORK_STATE
允许改变网络连接状态
设备在WiFi跟数据双开时,强行切换使用数据网络
READ_PHONE_STATE
允许读取手机状态
(可选)获取IMSI用于判断双卡和换卡
WRITE_SETTINGS
允许读写系统设置项
6.0以下添加,可增加电信成功率,6.0以上可去除
GET_TASKS
允许应用程序访问TASK
方式一:
android:usesCleartextTraffic="true"
示例代码:
(3)混淆规则:
-dontwarncom.cmic.sso.sdk.**-dontwarncom.sdk.**-keepclasscom.cmic.sso.sdk.**{*;}-keepclasscom.sdk.**{*;}-keepclasscn.com.chinatelecom.account.api.**{*;}
通过上面的几个步骤,工程就配置完成了,接下来就可以在工程中使用闪验SDK进行开发了。
OneKeyLoginManager.getInstance().init(getApplicationContext(),appId,newInitListener(){@OverridepublicvoidgetInitStatus(intcode,Stringresult){}});
OneKeyLoginManager.getInstance().getPhoneInfo(newGetPhoneInfoListener(){@OverridepublicvoidgetPhoneInfoStatus(intcode,Stringresult){}});
方法原型:
OneKeyLoginManager.getInstance().openLoginAuth(false,newOpenLoginAuthListener(){@OverridepublicvoidgetOpenLoginAuthStatus(intcode,Stringresult){}},newOneKeyLoginListener(){@OverridepublicvoidgetOneKeyLoginStatus(intcode,Stringresult){}});
OneKeyLoginManager.getInstance().finishAuthActivity();
方法原型
publicShanYanUIConfig.BuilderaddCustomView(Viewview,booleanisFinish,booleantype,ShanYanCustomInterfaceshanYanCustomInterface){}
参数说明
参数
参数类型
说明
view(必填)
View
自定义控件对象
isFinish(必填)
boolean
type(必填)
设置自定义控件的位置:
shanYanCustomInterface
ShanYanCustomInterface
自定义控件监听
注意:如果添加布局为自定义控件,监听实现请参考demo示例。
同SDK使用说明-->初始化
在初始化执行之后调用,本机号校验界面需自行实现,可以在多个需要校验的页面中调用。
OneKeyLoginManager.getInstance().startAuthentication(phone,newAuthenticationExecuteListener(){@OverridepublicvoidauthenticationRespond(intcode,Stringresult){}});