工具/原料

 
  • Android Studio
  • mob SDK中的jar 和.so文件

方法/步骤

 
  1. 1

    把3个jar 放入libs

  2.  

    并添加依赖 在项目的build.gradle里面

  3.  

    在你的项目的main 目录下新建jniLibs 文件夹 注意:!!!! 一定是main 目录下 不是 java 文件夹

  4.  

    写代码!一步一步复制吧  SMSSDK.initSDK(this, " ", " ");

  5.  

    EventHandler eh = new EventHandler() {    @Override    public void afterEvent(int event, int result, Object data) {        LogUtils.i("event:"+event+"    result:"+result+"    data:"+data.toString());            switch (event) {                case SMSSDK.EVENT_SUBMIT_VERIFICATION_CODE:                    if (result == SMSSDK.RESULT_COMPLETE) {                        toast("验证成功");                    } else {                        toast("验证失败");                    }                    break;                case SMSSDK.EVENT_GET_VERIFICATION_CODE:                    if (result == SMSSDK.RESULT_COMPLETE) {                        toast("获取验证码成功");                        //默认的智能验证是开启的,我已经在后台关闭                    } else {                        toast("获取验证码失败");                    }                    break;            }    }};

  6.  

    这里是获得验证码的请求:   SMSSDK.getVerificationCode("86", phone, new OnSendMessageHandler() {    @Override    public boolean onSendMessage(String s, String s1) {        return false;    }});

  7.  

    这里是提交用户输入的验证码:SMSSDK.submitVerificationCode("86", phone, SMS);

  8.  

    对了  还有toast

    private void toast(final String str) {

    runOnUiThread(new Runnable() {

    @Override

    public void run() {

    Toast.makeText(RegisterActivity.this, str, Toast.LENGTH_SHORT).show();

    }

    });

    }

  9.  

    完整 demo

    package com.vipheyue.swust.activity;

    import android.app.Activity;

    import android.os.Bundle;

    import android.view.View;

    import android.widget.Button;

    import android.widget.EditText;

    import android.widget.Toast;

    import com.dd.processbutton.iml.SubmitProcessButton;

    import com.lidroid.xutils.util.LogUtils;

    import com.rengwuxian.materialedittext.MaterialEditText;

    import com.vipheyue.swust.R;

    import com.vipheyue.swust.domain.MyUser;

    import com.vipheyue.swust.utils.ProgressGenerator;

    import butterknife.Bind;

    import butterknife.ButterKnife;

    import butterknife.OnClick;

    import cn.bmob.v3.listener.SaveListener;

    import cn.smssdk.EventHandler;

    import cn.smssdk.OnSendMessageHandler;

    import cn.smssdk.SMSSDK;

    public class RegisterActivity extends Activity implements ProgressGenerator.OnCompleteListener {

    EventHandler eh = new EventHandler() {

    @Override

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

    LogUtils.i("event:"+event+"    result:"+result+"    data:"+data.toString());

    switch (event) {

    case SMSSDK.EVENT_SUBMIT_VERIFICATION_CODE:

    if (result == SMSSDK.RESULT_COMPLETE) {

    toast("验证成功");

    } else {

    toast("验证失败");

    }

    break;

    case SMSSDK.EVENT_GET_VERIFICATION_CODE:

    if (result == SMSSDK.RESULT_COMPLETE) {

    toast("获取验证码成功");

    //默认的智能验证是开启的,我已经在后台关闭

    } else {

    toast("获取验证码失败");

    }

    break;

    }

    }

    };

    private void toast(final String str) {

    runOnUiThread(new Runnable() {

    @Override

    public void run() {

    Toast.makeText(RegisterActivity.this, str, Toast.LENGTH_SHORT).show();

    }

    });

    }

    @Bind(R.id.met_phone)

    MaterialEditText metPhone;

    @Bind(R.id.btn_Send)

    SubmitProcessButton btnSend;

    @Bind(R.id.et_codeSMS)

    EditText etCodeSMS;

    @Bind(R.id.bt_commit)

    Button btCommit;

    @Override

    public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_register);

    ButterKnife.bind(this);

    LogUtils.customTagPrefix = "xUtils";  LogUtils.allowI = true;

    SMSSDK.initSDK(this, "bed3c2b8490b", "aa7933d433ce4a6b7b1d895f93312fef");

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

    getSMS();

    }

    private void getSMS() {

    String phone = metPhone.getText().toString();

    SMSSDK.getVerificationCode("86", phone, new OnSendMessageHandler() {

    @Override

    public boolean onSendMessage(String s, String s1) {

    return false;

    }

    });

    }

    @OnClick(R.id.bt_commit)

    public void onClick() {

    String SMS=etCodeSMS.getText().toString().trim();

    String phone = metPhone.getText().toString();

    SMSSDK.submitVerificationCode("86", phone, SMS);

    }

    }

  10.  

    注意到mob后台去把只能短信 关闭哟

MOB 短信验证的更多相关文章

  1. Mob短信验证的配置的解释

    原文地址:http://www.jb51.net/article/84946.htm 关于mob短信验证的解释: mob官方是这样写的: repositories{ flatDir{ dirs 'li ...

  2. Mob短信验证的具体使用

    原文著作权地址:http://www.jb51.net/article/84946.htm demo地址:http://git.oschina.net/lizhanqi/MobSMSDemo 一.前言 ...

  3. 『实践』Android之短信验证码(用的Mob短信验证)

    1.参考资料 Mob网站:http://www.mob.com/ Mob在Github上的例子:https://github.com/MobClub/SMSSDK-for-Android 教程:htt ...

  4. Mob.com 短信验证的简单使用

    1.环境配置 http://wiki.sharesdk.cn/android-短信sdk集成文档/ a.sdk下载 http://www.mob.com/#/downloadDetail/SMS/an ...

  5. 【mob】Android短信验证+源码

    在很多的应用当中,都涉及到了短信验证的功能,比如在注册或者找回密码的时候,那么我们如何通过第三方的平台来完成这个功能呢? 本面博文就实现短信验证,来做一个小的栗子. 第一步-下载开发包 第二步-将SD ...

  6. Android实战简易教程-第三十九枪(第三方短信验证平台Mob和验证码自己主动填入功能结合实例)

    用户注冊或者找回password时通常会用到短信验证功能.这里我们使用第三方的短信平台进行验证实例. 我们用到第三方短信验证平台是Mob,地址为:http://mob.com/ 一.注冊用户.获取SD ...

  7. Mob 之 短信验证集成 SMSSDK

    开相关发中总会遇到短信验证这些操作,这周没有来得及写新的东西,借此分享一篇以前学习短信验证的笔记,本文使用的是 Mob 提供的 SMSSDK . 下载 SMSSDK 官网下载地址:SMSSDK 集成 ...

  8. 完整的Android手机短信验证源码

    短信验证功能我分两个模块来说,短信验证码的后台和代码实现短信验证码的功能. 一.短信验证码的后台      1.注册Mob账号:http://www.mob.com/#/login 2.注册成功之后, ...

  9. android短信验证

    短信验证demo http://download.csdn.net/detail/crazy1235/8315279#comment 使用MOB平台开发,用法详见: http://blog.csdn. ...

随机推荐

  1. 18. javacript高级程序设计-JavaScript与XML

    1. JavaScript与XML IE采取了下列方式: l 通过ActiveX对象来支持处理XML,而相同的对象也可以用来构建桌面应用程序 l Windows携带了MSXML库,JavaScript ...

  2. 【编程之美】2.5 寻找最大的k个数

    有若干个互不相等的无序的数,怎么选出其中最大的k个数. 我自己的方案:因为学过找第k大数的O(N)算法,所以第一反应就是找第K大的数.然后把所有大于等于第k大的数取出来. 写这个知道算法的代码都花了2 ...

  3. HDU 4314 Save the dwarfs (DP) ---转载

    题目:传送门. 这个是DP,比赛的时候用贪心写了好久没写出来. 题意: 有n个矮人被困在深度为h的井中,每个矮人都ai(脚到肩膀的高度)和bi(手臂长度), 当存在a1 + a2 + ... + ak ...

  4. 获取driver网络路径名称

    'get the web path of the drive s: Dim MM As New Management.ManagementObject(String.Format("win3 ...

  5. July 8th, Week 28th Friday, 2016

    Care and diligence bring luck. 谨慎和勤奋带来好运气. Just as we have said before, diligence is the mother of g ...

  6. Android之WebView学习

    WebView常用方法 WebSettings 在使用WebView前我们都要进行相关的配置,常见的操作如下: WebSettings settings = mWebView.getSettings( ...

  7. 有关struts2中用到 js 总结

    1.js中取Struts2中的栈里的值 var current = "${currentPage}"; 2.js 如何提交执行提交url连接 ,以及 Struts中的url如何如何 ...

  8. Lattice Diamond 的学习之新建工程

    1).打开软件 在软件打开后的初始布局会有一个Start  page 可以创建.打开.导入一个ISPLEVER 工程. 2).建立工程:1,Start page 中Project --> NEW ...

  9. jquery学习笔记----元素筛选

    1.eq()  筛选指定索引号的元素2.first() 筛选出第一个匹配的元素3.last() 筛选出最后一个匹配的元素4.hasClass() 检查匹配的元素是否含有指定的类5.filter() 筛 ...

  10. Android的两种事件处理机制

    UI编程通常都会伴随事件处理,Android也不例外,它提供了两种方式的事件处理:基于回调的事件处理和基于监听器的事件处理. 对于基于监听器的事件处理而言,主要就是为Android界面组件绑定特定的事 ...