本文共 1837 字,大约阅读时间需要 6 分钟。
一、无GUI接口概述
本文只介绍短信SDK内置(无界面)方法的使用和注意事项,如果您想查阅有界面的操作方法,请参考相关章节的说明。尽管短信SDK提供了简化集成步骤的GUI功能,但它同样允许开发者放弃这套GUI,直接与核心代码进行交互。请先按照 下载并集成短信SDK。注意:如果版本等于2.0.1,要将SMSSDK的res下的raw复制到你的工程的res下;另外有些较老的版本需要复制libsmssdk.so。2.1.2开始(包括)eclipse不再需要配置so。其中对外主要的类有:SMSSDK和EventHandler,所有的操作都通过SMSSDK来发起,并通过EventHandler来接收。由于EventHandler已有SMSSDK操作回调章节()讲述,因此本节之着重介绍SMSSDK的各个方法。二、无GUI接口说明2.1、初始化接口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、短信验证码接口public interface OnSendMessageHandler { /** * 此方法在发送验证短信前被调用,传入参数为接收者号码 * 返回true表示此号码无须实际接收短信 */ public boolean onSendMessage(String country, String phone); }
短信SDK并不能支持世界上所有国家的短信验证服务,因此我们提供了getSupportedCountries方法,在使用短信验证码功能前请调用此方法,获取当前SDK可以支持的国家列表和号码匹配规则。
getVerificationCode用于向服务器请求发送验证码的服务,需要传递国家代号和接收验证码的手机号码,支持此服务的国家代码在 getSupportedCountries中获取。请求getVerificationCode的时间间隔不应该小于60秒,否则服务端会返回“操作过 于频繁”的错误submitVerificationCode用于向服务器提交接收到的短信验证码,验证成功后会通过EventHandler返回国家代码和电话号码。转载地址:http://qamhl.baihongyu.com/