最近更新:2024-04-17
展开全部
SDK API 描述
特别提示:极光短信的客户端 SDK 已不再更新维护,请开发者使用 Rest API 完成业务逻辑
SMSSDK 类:对外的类,该类为单例,调用该类的方法都需要获取该类的唯一实例,获得方法为 SMSSDK.getInstance()。
SmscodeListener:获取验证码的回调接口,在调用 SMSSDK 的 getSmsCode 时需要传入接口实例。
SmscheckListener:检查验证码的回调接口,在调用 SMSSDK 的 checkSmsCode 时需要传入接口实例。
初始化接口
接口说明
该接口为初始化接口,主要是检测一些配置信息,如果配置错误将会初始化失败,将会打印错误日志。调用其它接口前必须先调用该接口,仅且仅需调用一次,建议在 Application 或初始 Activity 中调用。
SMSSDK.initSdk(Context context)
SMSSDK.initSdk(Context context)
此代码块在浮窗中显示
调用示例
SMSSDK.getInstance().initSdk(this);
SMSSDK.getInstance().initSdk(this);
此代码块在浮窗中显示
获取验证码
接口说明
SMSSDK.getSmsCode(String phone, String tempId, SmscodeListener listener)
SMSSDK.getSmsCode(String phone, String tempId, SmscodeListener listener)
此代码块在浮窗中显示
该接口是在非 UI 线程回调,需要在 UI 线程回调可调用 SMSSDK.getSmsCodeAsyn()。
参数说明
- phone:手机号码
- tempId:短信模板
- listener:回调接口
调用示例
SMSSDK.getInstance().getSmsCodeAsyn("159xxxxxxxx", "1", new SmscodeListener() {
@Override
public void getCodeSuccess(final String uuid) {
// 获取验证码成功,uuid 为此次获取的唯一标识码。
}
@Override
public void getCodeFail(int errCode, final String errMsg) {
// 获取验证码失败 errCode 为错误码,详情请见文档后面的错误码表;errMsg 为错误描述。
}
});
SMSSDK.getInstance().getSmsCodeAsyn("159xxxxxxxx", "1", new SmscodeListener() {
@Override
public void getCodeSuccess(final String uuid) {
// 获取验证码成功,uuid 为此次获取的唯一标识码。
}
@Override
public void getCodeFail(int errCode, final String errMsg) {
// 获取验证码失败 errCode 为错误码,详情请见文档后面的错误码表;errMsg 为错误描述。
}
});
此代码块在浮窗中显示
验证验证码
接口说明
SMSSDK.checkSmsCode(String phone, String code, SmscheckListener listener)
SMSSDK.checkSmsCode(String phone, String code, SmscheckListener listener)
此代码块在浮窗中显示
该接口是在非 UI 线程回调,需要在 UI 线程回调可调用 SMSSDK.checkSmsCodeAsyn()。
参数说明
- phone:手机号码
- code:短信验证码
- listener:回调接口
调用示例
SMSSDK.getInstance().checkSmsCodeAsyn("159xxxxxxxx", "123456", new SmscheckListener() {
@Override
public void checkCodeSuccess(final String code) {
// 验证码验证成功,code 为验证码信息。
}
@Override
public void checkCodeFail(int errCode, final String errMsg) {
// 验证码验证失败, errCode 为错误码,详情请见文档后面的错误码表;errMsg 为错误描述。
}
});
SMSSDK.getInstance().checkSmsCodeAsyn("159xxxxxxxx", "123456", new SmscheckListener() {
@Override
public void checkCodeSuccess(final String code) {
// 验证码验证成功,code 为验证码信息。
}
@Override
public void checkCodeFail(int errCode, final String errMsg) {
// 验证码验证失败, errCode 为错误码,详情请见文档后面的错误码表;errMsg 为错误描述。
}
});
此代码块在浮窗中显示
获取语音验证码(中文)
接口说明
获取语音验证码,语音语言为中文。
SMSSDK.getVoiceCode(String phone, SmscodeListener listener)
SMSSDK.getVoiceCode(String phone, SmscodeListener listener)
此代码块在浮窗中显示
该接口是在非 UI 线程回调,需要在 UI 线程回调可调用 SMSSDK.getVoiceCodeAsyn()。
参数说明
- phone:手机号码
- listener:回调接口
调用示例
SMSSDK.getInstance().getVoiceCodeAsyn("159xxxxxxxx", new SmscodeListener() {
@Override
public void getCodeSuccess(final String uuid) {
//获取验证码成功,uuid 为此次获取的唯一标识码。
}
@Override
public void getCodeFail(int errCode, final String errMsg) {
//获取验证码失败,errCode 为错误码,详情请见文档后面的错误码表;errMsg 为错误描述。
}
});
SMSSDK.getInstance().getVoiceCodeAsyn("159xxxxxxxx", new SmscodeListener() {
@Override
public void getCodeSuccess(final String uuid) {
//获取验证码成功,uuid 为此次获取的唯一标识码。
}
@Override
public void getCodeFail(int errCode, final String errMsg) {
//获取验证码失败,errCode 为错误码,详情请见文档后面的错误码表;errMsg 为错误描述。
}
});
此代码块在浮窗中显示
获取语音验证码(其他语言)
接口说明
获取语音验证码,该接口可指定语言。
SMSSDK.getVoiceCode(String phone,int language,SmscodeListener listener)
SMSSDK.getVoiceCode(String phone,int language,SmscodeListener listener)
此代码块在浮窗中显示
该接口是在非 UI 线程回调,需要在 UI 线程回调可调用 SMSSDK.getVoiceCodeAsyn()。
参数说明
- phone:手机号码
- language:0为中文,1为英文,2为中英文,传入不支持的语言会报50040错误
- listener:回调接口
调用示例
SMSSDK.getInstance().getVoiceCodeAsyn("159xxxxxxxx",2,new SmscodeListener() {
@Override
public void getCodeSuccess(final String uuid) {
//获取验证码成功,uuid 为此次获取的唯一标识码。
}
@Override
public void getCodeFail(int errCode, final String errMsg) {
//获取验证码失败,errCode 为错误码,详情请见文档后面的错误码表;errMsg 为错误描述。
}
});
SMSSDK.getInstance().getVoiceCodeAsyn("159xxxxxxxx",2,new SmscodeListener() {
@Override
public void getCodeSuccess(final String uuid) {
//获取验证码成功,uuid 为此次获取的唯一标识码。
}
@Override
public void getCodeFail(int errCode, final String errMsg) {
//获取验证码失败,errCode 为错误码,详情请见文档后面的错误码表;errMsg 为错误描述。
}
});
此代码块在浮窗中显示
设置获取验证码的时间间隔
接口说明
设置前后两次获取验证码的时间间隔,默认 30 秒。
SMSSDK.setIntervalTime(long intervalTime)
SMSSDK.setIntervalTime(long intervalTime)
此代码块在浮窗中显示
参数说明
- intervalTime:时间间隔,单位是毫秒(ms)。
调用示例
SMSSDK.getInstance().setIntervalTime(60000); // 设置间隔时间为 60 秒
SMSSDK.getInstance().setIntervalTime(60000); // 设置间隔时间为 60 秒
此代码块在浮窗中显示
获取当前设置的时间间隔
接口说明
获取当前设置的时间间隔。
SMSSDK.getIntervalTime()
SMSSDK.getIntervalTime()
此代码块在浮窗中显示
返回值
- long:单位为毫秒(ms)。
调用示例
SMSSDK.getInstance().getIntervalTime();
SMSSDK.getInstance().getIntervalTime();
此代码块在浮窗中显示
设置 debug 模式
接口说明
设置 debug 模式,设置 true 会输出 SDK 打印的日志。
SMSSDK.setDebugMode(boolean debugMode)
SMSSDK.setDebugMode(boolean debugMode)
此代码块在浮窗中显示
参数说明
- debugMode:true 为 debug 模式,false 为非 debug 模式。
调用示例
SMSSDK.getInstance().setDebugMode(true);
SMSSDK.getInstance().setDebugMode(true);
此代码块在浮窗中显示
错误码描述
错误码 |
错误码描述 |
备注 |
---|---|---|
3001 | 请求超时 | |
3002 | 无效的手机号码 | |
4001 | body 为空 | |
4002 | 无效的 AppKey | |
4003 | 无效的来源 | |
4004 | body 解密失败 | |
4005 | aes key 解密失败 | |
4006 | 时间戳转化失败 | |
4007 | body 格式不正确 | |
4008 | 无效时间戳 | |
4009 | 没有短信验证权限 | |
4011 | 发送超频 | 同一手机号每天获取验证码无限制,通知类相同内容10分钟3条,不同内容无限制,营销类10分钟3条。 |
4013 | 模板不存在 | |
4014 | extra 为空 | |
4015 | 验证码不正确 | |
4016 | 没有余额 | |
4017 | 验证码超时 | |
4018 | 重复验证 | |
2993 | 验证码校验失败 | 短信已下发但获取 uuid 异常 |
2994 | 本地数据有误 | |
2995 | 数据解析错误 | |
2996 | 两次请求不超过 1 分钟 | 本地校验 |
2997 | 未获取验证码 | |
2998 | 网络错误 | 没有网络等 |
2999 | 其它错误 | |
50040 | 传入不支持的语言 | 0为中文,1为英文,2为中英文 |
文档内容是否对您有帮助?