Android SMSSDK无GUI接口集成方法

1、无GUI接口概述android

本文只介绍短信SDK内置(无界面)方法的使用和注意事项,若是您想查阅有界面的操做方法,请参考http://wiki.mob.com/sdk-sms-android-3-0-0/相关章节的说明。bash

尽管短信SDK提供了简化集成步骤的GUI功能,但它一样容许开发者放弃这套GUI,直接与核心代码进行交互。服务器

请先按照 http://wiki.mob.com/sdk-sms-android-3-0-0/下载并集成短信SDK。
注意:若是版本等于2.0.1,要将SMSSDK的res下的raw复制到你的工程的res下;另外有些较老的版本须要复制libsmssdk.so。2.1.2开始(包括)eclipse再也不须要配置so。
其中对外主要的类有:SMSSDK和EventHandler,全部的操做都经过SMSSDK来发起,并经过EventHandler来接收。因为EventHandler已有SMSSDK操做回调章节(http://wiki.mob.com/android-%E7%9F%AD%E4%BF%A1sdk%E6%93%8D%E4%BD%9C%E5%9B%9E%E8%B0%83/)讲述,所以本节之着重介绍SMSSDK的各个方法。eclipse

2、无GUI接口说明ide

2.一、初始化接口spa


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

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配套使用,不然可能形成内存泄漏。cdn

2.二、短信验证码接口blog


其中OnSendMessageHandler的定义以下,这个Handler的用途是在发送短信以前,开发者本身执行一个操做,来根据电话号码判断是否须要发送短信接口

public interface OnSendMessageHandler {
	/** 
	 * 此方法在发送验证短信前被调用,传入参数为接收者号码
	 * 返回true表示此号码无须实际接收短信
	 */
 
	public boolean onSendMessage(String country, String phone);
 
}
复制代码

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

相关文章
相关标签/搜索