动画验证码接入

动画验证码接入

本文档仅适用于3.0以前的gysdk,3.0以后的版本已经删除了动画验证码相关的功能接口。

前言

进行动画验证码接入前请先完成SDK的接入与初始化

功能说明

动画验证码主要用于区分人类与机器

现提供两种模式,请业务方根据自身业务场景进行选择

  • 智能无感模式

    此模式会自动判断设备的风险等级,可信设备无感验证通过,怀疑设备弹出动画验证码进行校验。

  • 动画验证模式

    此模式每次调用均弹出动画验证码进行校验。

整体流程

  • 动画验证模式

  • 智能无感模式

接口列表

API 类名: com.getui.gysdk.GYManager

方法 功能说明
nonSenseVerify 智能无感校验接口
picVerify 动画验证码校验接口

接口说明

1、智能无感接口

/**
 * 智能无感验证.
 *
 * @param phoneMd5          手机号md5值,32位小写.
 * @param accountId         应用账户id.
 * @param businessId        应用业务id.
 * @param activity          当前activity对象.
 * @param showLoadingDialog 是否显示加载框
 * @param callBack          回调
 */
public void nonSenseVerify(String phoneMd5, String accountId, String businessId, Activity activity,boolean showLoadingDialog, PicCallBack callBack)

输入参数

参数名称 是否必填 类型 描述
phoneMd5 否 String 手机号md5值,32位小写
accountId 否 String 用户账号ID,可加密,保证每个用户唯一即可
businessId 是 String 业务场景ID,用于标识不同的场景,例如登录、注册、找回密码等,可联系技术支持添加
activity 是 Activity 当前Activity对象
showLoadingDialog 是 boolean 是否需要SDK弹出一个加载框
callBack 否 PicCallBack 回调

调用示例

GYManager.getInstance().nonSenseVerify(StringUtils.getMD5Str("phonenumber"), accountId, businessId, MainActivity.this, true,
                new PicCallBack() {
                    //智能无感验证没有通过,动画验证码准备完成,即将展示.
                    @Override
                    public void onPicReady(GYResponse response) {
                        Log.d(TAG, "nonsense pic is ready:" + response);
                    }

                    //验证通过
                    @Override
                    public void onSuccess(final GYResponse response) {
                        Log.d(TAG, " verify success:" + response);
                    }

                    //验证失败
                    @Override
                    public void onFailed(final GYResponse response) {
                        Log.d(TAG, " verify failed:" + response);
                    }
                });

返回示例

验证结果会在PicCallBack中返回,response的信息如下:

{  
    gyuid='b8556da533fc4ffd9d89fc3bdee2a7ef66',
    reqId='null',
    success=true,
    code=27001,
    msg='成功',
    validate='5940f0ca2c6889dacaabe03de1085b43'
}



2、动画验证码接口

/**
 * 动画验证码.
 *
 * @param activity          当前act.
 * @param businessId        业务id.
 * @param showLoadingDialog 是否显示加载框
 * @param callBack          回调
 */
public void (Activity activity, String businessId, boolean showLoadingDialog, PicCallBack callBack) 

输入参数

参数名称 是否必填 类型 描述
activity 是 Activity 当前Activity对象
businessId 是 String 业务场景ID,用于标识不同的场景,例如登录、注册、找回密码等,可联系技术支持添加
showLoadingDialog 是 boolean 是否需要SDK弹出一个加载框
callBack 否 PicCallBack 回调

调用示例

GYManager.getInstance().picVerify(MainActivity.this, businessId, true, new PicCallBack() {
            //动画验证码准备完成,即将展示.
            @Override
            public void onPicReady(GYResponse response) {
                Log.d(TAG, "pic is ready:" + response);
            }

            //验证通过
            @Override
            public void onSuccess(final GYResponse response) {
                Log.d(TAG, "verify success:" + response);
            }

            //验证失败
            @Override
            public void onFailed(final GYResponse response) {
                Log.d(TAG, "verify failed:" + response);
            }
        });

返回示例

验证结果会在PicCallBack中返回,response的信息如下:

{  
    gyuid='b8556da533fc4ffd9d89fc3bdee2a7ef66',
    reqId='null',
    success=true,
    code=27001,
    msg='成功',
    validate='5940f0ca2c6889dacaabe03de1085b43'
}



在PicCallBack中接收验证结果或异常信息

PicCallBack:

public interface PicCallBack extends GyCallBack {

    /**
     * description:验证成功.
     */    
    void onSuccess(GYResponse response);

    /**
     * description:验证失败.
     */
    void onFailed(GYResponse response);

    /**
     * description:动画验证码准备完毕,即将展示.
     */

    void onPicReady(GYResponse response);

}
  • 类 GYResponse 属性详细说明:
属性 类型 属性说明
success boolean 验证是否成功
code int 状态码
msg String 状态描述信息
gyuid String 个验用户唯一标识
reqId String 请求唯一id,错误不返回
validate String 二次校验凭证,只有验证通过才有

返回码

请参考状态码汇总

文档中心搜索

技术
咨询

微信扫一扫

随时联系技术支持

在线
咨询