GTOnePass Android API Document

2018 01.12 edited

概述及资源

OnePass 资源文件

环境需求

条目 资源
开发目标 4.0以上
开发环境 Android Studio 2.1.3
系统依赖 v7包
产品依赖 test-Button
sdk三方依赖

资源下载

条目 资源
产品结构流程 交互流程,通讯流程
SDK下载 gop-android-sdk
接口文档 gop-android-api-docs
错误码 Error Code 列表
Demo工程下载 gop-android-demo
下载体验地址 GeeOnePass.apk

安装

获取SDK

下载获取

git clone https://github.com/GeeTeam/gop-android-sdk.git

git clone git@github.com:GeeTeam/gop-android-sdk.git

导入SDK并配置环境

  1. 在demo的libs包下,将获取的.aar文件拖拽到工程中的libs文件夹下。

    init

  2. 在拖入.aar到libs文件夹后, 还要检查.aar是否被添加到Library,要在项目的
    build.gradle下添加如下代码:

repositories {
flatDir {
dirs 'libs'
}
}

并且要手动将aar包添加依赖:

compile(name: 'geetest_message_android_v1.0.1', ext: 'aar')

import

权限配置

<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />

混淆规则

-dontwarn com.geetest.onepass.**
-keep class com.geetest.onepass.** {
*;
}
-dontwarn com.geetest.sdk.**
-keep class com.geetest.sdk.** {
*;
}

配置接口

继承完成test-Button后, 开发者集成客户端sdk前, 必须先在您的服务器上搭建相应的服务端SDK,配置verify_Url, 并配置从极验后台获取的customID

集成用户需要使用Android SDK完成提供的以下接口:

  1. 配置并初始化
  2. 调用校验接口
  3. 处理结果
  4. 处理错误

集成代码参考下方的代码示例

编译并运行你的工程

编译你的工程, 体验全新的极验onepass产品!

build

轻轻点击集成的验证按钮, 如此自然, 如此传神。

代码示例

初始化与校验

初始化

在项目的具体页面的onCreate方法里面进行初始化。

gopGeetestUtils = GOPGeetestUtils.getInstance(MainActivity.this);

进行onepass校验

final String CUSTOM_ID = "32位产品id";
gopGeetestUtils.getOnePass("<---手机号--->", "验证返回的校验validate", CUSTOM_ID, gopLinster);

接口实现

实现接口进行校验。

BaseGOPListener gopLinster=new BaseGOPListener() {
@Override
public void gopOnError(String error) {
//过程中出现的错误
}
@Override
public void gopOnSendMsg(boolean canSendMSG,Map<String, String> result,JSONObject jsonObject) {
//sdk内部发送短信所需要的结果,当为true的时候表示sdk内部发送短信,false的时候自定义短信
}
@Override
public void gopOnResult(String result) {
//网关校验成功所走的回调
}
@Override
public String gopOnVerifyUrl() {
//回传给sdk内部使用的VerifyUrl
}
};

额外接口实现。

接口 说明
gopOnDobble() 此接口用于未收到短信,进行再次请求时调用,默认为false
gopOnDefaultSwitch() 此接口用于判断是否调用本sdk内置短信,默认为false
gopOnVerifyUrlBody() 此接口用于向VerifyUrl的接口body中传参,默认为null
gopOnAnalysisVerifyUrl() 此接口用于拿到校验的结果,并将result结果回传给sdk

页面关闭

在页面关闭的时候执行此方法。

@Override
protected void onDestroy() {
super.onDestroy();
gopGeetestUtils.cancelUtils();
}

更加完整的示例代码请参考官方提供的demo