资讯中心 / Mob安卓端发送短信验证码无GUI接口使用方法

Mob安卓端发送短信验证码无GUI接口使用方法

发送短信验证码发送短信短信验证码
2018-11-21

尽管短信SDK提供简化集成步骤的GUI功能,单页同样允许开发者放弃使用这套GUI,直接用核心代码进行交互,Mob安卓发送短信验证码无GUI接口服务使用方法和注意事项有哪些呢?

首先下载并集成Mob短信SDK,集成方式可参见Mob短信快速集成文档。

注意:如果版本等于2.0.1,要将SMSSDK的res下的raw复制到你的工程的res下;另外有些较老的版本需要复制libsmssdk.so。2.1.2开始(包括)eclipse不再需要配置so。

其中对外主要的类有:SMSSDK和EventHandler,所有的操作都通过SMSSDK来发起,并通过EventHandler来接收。

 

初始化接口

限定符和类型

方法和说明

static void

registerEventHandler(EventHandler handler)
注册回调接口

static void

unregisterEventHandler(EventHandler handler)
注销回调接口


registerEventHandler用来往SMSSDK中注册一个事件接收器,SMSSDK允许开发者注册任意数量的接收器,所有接收器都会在事件 被触发时收到消息。

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

                   EventHandler eh=new EventHandler(){

 

                            @Override

                            public void afterEvent(int event, int result, Object data) {

 

                            if (result == SMSSDK.RESULT_COMPLETE) {

                                     //回调完成

                                     if (event == SMSSDK.EVENT_SUBMIT_VERIFICATION_CODE) {

//提交验证码成功

                                     }else if (event == SMSSDK.EVENT_GET_VERIFICATION_CODE){

                            //获取验证码成功

                                     }else if (event ==SMSSDK.EVENT_GET_SUPPORTED_COUNTRIES){

//返回支持发送验证码的国家列表

}

}else{

((Throwable)data).printStackTrace();

}

}

};

SMSSDK.registerEventHandler(eh); //注册短信回调

 

registerEventHandler必须和unregisterEventHandler配套使用,否则可能造成内存泄漏。

2.2、短信验证码接口

限定符和类型

方法和说明

static void

getSupportedCountries()
获取短信目前支持的国家列表,在监听中返回

static void

getVerificationCode(String country, String phone)
getVerificationCode(String country, String phone, OnSendMessageHandler listener)
getVerificationCode(String tempCode,String country, String phone , OnSendMessageHandler listener)
请求获取短信验证码,在监听中返回,country参数是传国家区号,eg:中国大陆,传”86″即可;phone参数传手机号;tempCode传模板编号,在mob后台申请自定义模板,不需要传null即可

static void

submitVerificationCode(String country, String phone, String code)
提交短信验证码,在监听中返回

其中OnSendMessageHandler的定义如下,这个Handler的用途是在发送短信之前,开发者自己执行一个操作,来根据电话号码判断是否需要发送短信

 

1

2

3

4

5

6

7

8

9

public interface OnSendMessageHandler {

         /**

          * 此方法在发送验证短信前被调用,传入参数为接收者号码

          * 返回true表示此号码无须实际接收短信

          */

 

         public boolean onSendMessage(String country, String phone);

 

}

短信SDK并不能支持世界上所有国家的短信验证服务,因此Mob短信验证码SDK提供了getSupportedCountries方法,在使用短信验证码功能前请调用此方法,获取当前SDK可以支持的国家列表和号码匹配规则。getVerificationCode用于向服务器请求发送验证码的服务,需要传递国家代号和接收验证码的手机号码,支持此服务的国家代码在 getSupportedCountries中获取。请求getVerificationCode的时间间隔不应该小于60秒,否则服务端会返回“操作过 于频繁”的错误。
submitVerificationCode用于向服务器提交接收到的短信验证码,验证成功后会通过EventHandler返回国家代码和电话号码。

以上就是Mob安卓端发送短信验证码无GUI接口使用方法和注意事项,如果你想了解有界面的操作方法,请参考 [短信SDK集成文档] 相关章节的说明。

上一篇 下一篇
SDK打包中 — 0%

SDK下载

正在根据您选择的SDK打包中,完成后自动下载
0%