员工身份(EIAM)

安卓SDK列表

# 概述

竹云IDaaS开放平台为广大安卓手机开发者提供了多种登录认证模块的SDK包,辅助开发者快速接入登录、注册、生物认证等功能。

# 最新SDK包

模块名 SDK包 最新版本 文件大小 下载链接
通用开发包 AuthnCenter_Common_2E-1.5.3.aar v.1.5.3 0.1M 点此下载 (opens new window)
密码登录 AuthnCenter_PWLogin_2E-1.5.3.aar v.1.5.3 0.1M 点此下载 (opens new window)
短信登录 AuthnCenter_SMSLogin_2E-1.5.3.aar v.1.5.3 0.1M 点此下载 (opens new window)
生物认证 AuthnCenter_MFA_BioVerify_2E-1.5.3.aar v.1.5.3 0.1M 点此下载 (opens new window)
动态口令OTP认证 AuthnCenter_MFA_OTP-1.5.3.aar v.1.5.3 0.1M 点此下载 (opens new window)

# 变更记录

版本号 更新时间 更新说明
v1.5.3 2022.12.11 新增生物认证,短信,密码登录SDK,common包将原common包中各个业务,UI,分散到各个功能包。 common包只包含引用公共库和工具类。
v1.4.0 2021.10.11 解决已知问题,提高SDK稳定性

# SDK包介绍

# 通用开发包介绍

基本配置初始化主类AuthnCenterAPI方法简介:

/**
 * 短信验证码 -- 发送短信
 */
public void smsSend(Context context, SendSmsReq req, RequestListener listener)

/**
 * 获取国家区号    注意 如果配置了国家区号需要调用此接口获取国家区号
 */
public void getCountryCode(Context context, RequestListener listener)

/**
 * 社交账号绑定接口
 * @param context      上下文
 * @param stateToken   当前登录之后返回临时token
 * @param otpsmsReq    绑定对象信息
 * @param listener     事件回调
 */
public void socialBind(Context context, String stateToken, OTPSMSReq otpsmsReq, RequestListener listener)

/**
 *  注册
 * @param context      上下文
 * @param stateToken   当前登录之后返回临时token
 * @param otpsmsReq    注册对象信息
 * @param listener     事件回调
 */
public void register(Context context, String stateToken, OTPSMSReq otpsmsReq, RequestListener listener)

/**
 * 解析id_token
 * @param context
 * @param id_token  id_token
 * @param listener  回调事件
 */
public void getUserInfoFromIdToken(Context context, String id_token, CallbackListener listener)

/**
 * 校验 id_token 
 * @param context 上线文
 * @param id_token  id_token
 * @param listener  回调事件
 */
public void verifySign(Context context, String id_token, VerifySignListener listener)


/**
 * 刷新token
 *
 * @param context   上下文
 * @param sessionToken  登录成功之后返回的 sessionToken
 * @param listener  回调事件
 */
public void refreshToken(Context context, String sessionToken, RequestListener listener)

/**
 * 通过IDtoken获取用户ID
 *
 * @param idToken  登录成功之后返回的 idtoken
 */
public String  getUserId(String idToken)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60

SDK中包含KeyStore操作工具类可自行根据需要进行调用KeyStoreUtils。

# 密码登录包介绍

密码登录初始化主类AuthnCenterPWDLogin方法简介:

/**
 * 用户名密码登录
 *
 * @param context 上下文
 * @param userName  用户名
 * @param password   密码
 * @param loginListener  事件回调
 */
public void userLoginRequest(Context context, String userName, String password, PWLoginListener loginListener)

/**
 * 统一用户密码登录
 *   同时支持用户名密码  手机号+密码  邮箱+密码
 * @param context 上下文
 * @param userName  用户名
 * @param password   密码
 * @param loginListener  事件回调
 */
public void userLoginAuthRequest(Context context, String userName, String password, PWLoginListener loginListener) 

/**
 * 手机号+密码
 *
 * @param context 上下文
 * @param mobile  手机号
 * @param password   密码
 * @param loginListener  事件回调
 */
public void userLoginMobilePwd(Context context, String mobile, String password, PWLoginListener loginListener)

/**
 * 邮箱+密码
 *
 * @param context 上下文
 * @param email   邮箱
 * @param password   密码
 * @param loginListener  事件回调
 */
public void userLoginEmailPwd(Context context, String email, String password, PWLoginListener loginListener)

/**
 * 短信注册
 *
 * @param context 上下文
 * @param userInfoReq  注册用户实体
 * @param loginListener  事件回调
 */
public void userRegister(Context context, UserInfoReq userInfoReq, PWLoginListener loginListener) 

/**
 * 找回密码
 *
 * @param context 上下文
 * @param findPwdReq   找回密码实体
 * @param loginListener  事件回调
 */
public void findPwd(Context context, FindPwdReq findPwdReq, PWLoginListener loginListener)

/**
 * 跳过修改密码
 *
 * @param context 上下文
 * @param stateToken stateToken
 * @param loginListener  事件回调
 */
public void skipPwd(Context context, String stateToken, PWLoginListener loginListener) 

/**
 * 强制修改密码
 *
 * @param context 上下文
 * @param pwdReq    修改密码实体
 * @param stateToken stateToken
 * @param loginListener  事件回调
 */
public void updatePwd(Context context, UpdatePwdReq pwdReq, String stateToken, PWLoginListener loginListener)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76

PWLoginListener 在登录API回调时候会返回不同的CODE码 针对不同的应用场景需要接入这自行判断并做相关业务处理。 目前只针对 密码即将过期以及已经过期会返回如下code,具体可参照接入DEMO进行参考。

code值 内置枚举值 释义
10006 SDKCodeType.SDK_PASSWORD_EXPIRED.getCode() 密码已经过期
10007 SDKCodeType.SDK_PASSWORD_WARN.getCode() 密码即将过期

# 短信登录包介绍

基本配置初始化主类AuthnCenterSMSLogin方法简介:

/**
 * 内置滑动验证
 *
 * @param mContext 上下文
 */
BlockPuzzleDialog mBlockPuzzleDialog = new BlockPuzzleDialog(mContext);
mBlockPuzzleDialog.setOnResultsListener(new OnResultsListener() {
        @Override
        public void onResultsClick(String result) {
            LogUtil.getInstance().d("二次校验回调结果 mCaptchaToken:" + result);
            //这个回调结果就是短信校验的captchaToken参数
        }
        @Override
        public void onError(String code, String msg) {
            ToastUtils.ShowToast(mContext, String.format("错误码 : %s  错误信息 : %s", code, msg));
        }
    });
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

# 生物认证包介绍

AuthnCenterMFA 包内置API简介:


    /**
     * 获取绑定状态
     * @param context 上下文
     * @param idToken  idtoken
     * @param listener  回调事件
     *
     */
    public void getStatus(Context context, String idToken, MFAListener listener);

    /**
     *  绑定设备
     * @param context  上下文
     * @param idToken  idtoken
     * @param map      参数
     * @param listener 回调事件
     */
    public void bind(Context context, String idToken, Map map, MFAListener listener);
    /**
     * 解绑设备
     * @param context  上下文
     * @param idToken  idtoken
     * @param listener  回调事件
     */
    public void unbind(Context context, String idToken, MFAListener listener);

    /**
     *   查询认证状态
     * @param context 上下文
     * @param idToken  idtoken
     * @param listener 回调事件
     */
    public void getAuthentication(Context context, String idToken, MFAListener listener) ;

    /**
     *   查询认证状态 并进行认证
     * @param context  上下文
     * @param idToken  idtoken
     * @param ob    回调事件
     */
    public void getAuthentication(Context context, String idToken, OnBiometricIdentifyCallback ob);

    /**
     *  发起认证
     * @param context 上下文
     * @param idToken  idtoken
     * @param map    参数 map
     * @param listener  回调事件
     */
    public void startAuthentication(Context context, String idToken, Map map, MFAListener listener);

    /**
     *  发起认证包含 生物识别
     * @param context  上下文
     * @param idToken  idtoken
     * @param ob      回调事件
     */
    public void startBiometric(Context context, String idToken, OnBiometricIdentifyCallback ob);

    /**
     * 绑定解绑查询认证
     * @param context 上下文
     * @param idToken  idtoken
     * @param bt  枚举类型
     * @param ob  回调事件
     */
    public void startBiometric(Context context, String idToken, BiometricType bt, OnBiometricIdentifyCallback ob);

    /**
     * 获取用户ID
     * @param idToken  Idtoken
     * @return
     */
    public String getUserId(String idToken);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74

# 动态口令OTP认证包介绍

AuthnCenterOTP方法简介:

  /**
     * 添加 TOKEN
     *
     * @param context 上下文
     * @param text    扫码识别之后的字符
     */
    public void addToken(Context context, String text) 

    /**
     * 删除 生成的token
     *
     * @param context  上下文
     * @param position token 下标
     */
    public void delToken(Context context, int position)

    /**
     * 编辑 已经生成的 token 基础信息
     *
     * @param context  上下文
     * @param position 下标
     * @param issuer   issuer
     * @param label    label
     * @param image    image
     */
    public void editToken(Context context, int position, String issuer, String label, Uri image)

    /**
     * 删除 生成的token
     *
     * @param context  上下文
     * @param position token 下标
     */
    public void delToken(Context context, int position)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Token 是核心生成类
TokenCode 为时间管理类
TokenPersistence 为code管理类。
SDK 内置广播 常量  Constant.ACTION_IMAGE_SAVED  当有新的 OTP加入时 会发送广播,调用方按需监听此广播进行 列表刷新。
1
2
3
4