SFBaseMessage

类描述

回调公共信息类。封装了公共的错误码,错误信息等等。

目前使用到SFBaseMessage的回调有:

  1. 认证结果回调SFAuthResultListener。
  2. 注销结果回调SFLogoutListener
  3. Spa设置回调SFSetSpaConfigListener
  4. 通用https认证请求回调SFCommonHttpsRequestListener

类定义

public class SFBaseMessage {

    public long mErrCode;
    public String mErrStr;
    public String mServerInfo;
}

类成员描述

类成员 类型 说明
mErrCode long 具体可以去看下错误码描述
mErrStr String 错误信息,SDK在正常或者异常返回的错误信息。
mServerInfo String 服务器透传的信息,服务器在某些情况下直接 传递过来的信息。

SFBaseMessage 子类型说明

在认证回调(如 onAuthProgress)中,message 参数的具体类型与 nextAuthType 相关。以下是各认证类型对应的 Message 子类:

认证类型 (nextAuthType) Message 子类 说明
AUTH_TYPE_SMS SFSmsMessage 短信认证
AUTH_TYPE_RENEW_PASSWORD SFChangePswMessage 改密策略认证

类型转换示例代码

由于 message 参数类型为 SFBaseMessage 基类,需要通过 instanceof 判断实际类型后再进行强转:

public void onAuthProgress(SFAuthType nextAuthType, SFBaseMessage message) {
    switch (nextAuthType) {
        case AUTH_TYPE_SMS:
            // 短信认证
            if (message instanceof SFSmsMessage) {
                SFSmsMessage smsMessage = (SFSmsMessage) message;
                // 获取手机号
                String phoneNum = smsMessage.getPhoneNum();
                //获取倒计时
                int countDown = smsMessage.getCountDown();
                // 处理短信认证逻辑...
            }
            break;
        case AUTH_TYPE_RENEW_PASSWORD:
            // 改密策略认证
            if (message instanceof SFChangePswMessage) {
                SFChangePswMessage changePswMessage = (SFChangePswMessage) message;
                String policyMsg = changePswMessage.policyMsg;
                // 处理改密策略逻辑...
            }
            break;
        default:
            // 其他未知认证类型
            break;
    }
}

示例代码

具体去看下Demo中的处理

results matching ""

    No results matching ""