更新时间:2024-06-28 GMT+08:00
分享

场景3: App ID方式登录

描述

在使用云会议服务之前,如果申请了App ID,可使用App ID的方式进行登录,不需要账号和密码

在未登录状态下,只能加入已经创建的会议。

业务流程

  1. 接口调用

    1. 创建登录参数AppIdAuthParam。
      1. 设置第三方账号的唯一标识。
      2. 设置随机字符串。
      3. 设置签名信息。
      4. 设置该用户所在的企业ID,仅SP模式下需要填写
      5. 设置签名过期时间。
      6. 设置登录账号的昵称。
      7. 设置登录账号的邮箱。
      8. 设置登录账号的手机号码。
    2. 调用loginByAppid接口进行登录,第1步中的数据作为参数,会议服务器会根据相关参数,如果没有开户则执行开户。

  2. 处理回调

    处理回调中的结果。

示例代码

 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
//构建登录对象
AppIdAuthParam appIdAuthParam = new AppIdAuthParam();
//设置签名过期时间,单位为秒的Unix时间戳,为0则不会过期
appIdAuthParam.setExpireTime(1599618620);
//设置随机字符串,长度为32-64位
appIdAuthParam.setNonce(getNonce());
//设置该用户所在的企业ID,仅SP登录场景下需要
appIdAuthParam.setCorpId(getCorpId());
//设置第三方账号的id,长度为1到64位
appIdAuthParam.setUserId(getUserId());
//设置签名信息
appIdAuthParam.setSignature(getSignature());
//设置用户昵称
appIdAuthParam.setUserName(getUserName());
//注意邮箱需要符合邮箱格式要求
appIdAuthParam.setUserEmail(getUserEmail());
//注意手机号码必须符合手机格式,比如(^$|^[+]?[0-9]+$)
appIdAuthParam.setUserPhone(getUserPhone());
//开始登录
HWMSdk.getOpenApi(getActivity().getApplication()).loginByAppId(appIdAuthParam, new HwmCallback<LoginResult>() {
            @Override
            public void onSuccess(LoginResult loginResult) {
                dismissLoading();
                dismiss();
                if (loginResult != null) {
                    DemoUtil.showToast("登录成功" + loginResult.getUserUuid());
                }else{
                    DemoUtil.showToast("已登录");
                }
            }

            @Override
            public void onFailed(int retCode, String desc) {
                HwmContext.getInstance().runOnMainThread(() ->{
                    dismissLoading();
                    Error error = HWMBizSdk.getLoginApi().convertErrorCodeToUI(retCode);
                    DemoUtil.showToast("登录错误:" + getLoginErrTips(error));
                    dismiss();
                });
            }
        });

注意事项

必须在HWMSdk.init调用成功后才可以调用该方法登录。

相关文档