Android SMSSDK無GUI接口集成方法

1、無GUI接口概述android

本文只介紹短信SDK內置(無界面)方法的使用和注意事項,若是您想查閱有界面的操做方法,請參考http://wiki.mob.com/sdk-sms-android-3-0-0/相關章節的說明。服務器

儘管短信SDK提供了簡化集成步驟的GUI功能,但它一樣容許開發者放棄這套GUI,直接與核心代碼進行交互。eclipse

請先按照 http://wiki.mob.com/sdk-sms-android-3-0-0/下載並集成短信SDK
注意:若是版本等於2.0.1,要將SMSSDKres下的raw複製到你的工程的res下;另外有些較老的版本須要複製libsmssdk.so2.1.2開始(包括)eclipse再也不須要配置so
其中對外主要的類有:SMSSDKEventHandler,全部的操做都經過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的各個方法。
ide

2、無GUI接口說明spa

2.1、初始化接口3d

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

2.2、短信驗證碼接口接口

其中OnSendMessageHandler的定義以下,這個Handler的用途是在發送短信以前,開發者本身執行一個操做,來根據電話號碼判斷是否須要發送短信事件

public interface OnSendMessageHandler {
	/** 
	 * 此方法在發送驗證短信前被調用,傳入參數爲接收者號碼
	 * 返回true表示此號碼無須實際接收短信
	 */
 
	public boolean onSendMessage(String country, String phone);
 
}

短信SDK並不能支持世界上全部國家的短信驗證服務,所以咱們提供了getSupportedCountries方法,在使用短信驗證碼功能前請調用此方法,獲取當前SDK能夠支持的國家列表和號碼匹配規則。
getVerificationCode用於向服務器請求發送驗證碼的服務,須要傳遞國家代號和接收驗證碼的手機號碼,支持此服務的國家代碼在 getSupportedCountries中獲取。請求getVerificationCode的時間間隔不該該小於60秒,不然服務端會返回操做過 於頻繁的錯誤
submitVerificationCode用於向服務器提交接收到的短信驗證碼,驗證成功後會經過EventHandler返回國家代碼和電話號碼。

相關文章
相關標籤/搜索