工具/原料

 
  • 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. MySQL Got fatal error 1236原因和解决方法【转】

    本文来自:http://blog.itpub.net/22664653/viewspace-1714269/ 一 前言  MySQL 的主从复制作为一项高可用特性,用于将主库的数据同步到从库,在维护主 ...

  2. FFmpeg-20160428-snapshot-bin

    ESC 退出 0 进度条开关 1 屏幕原始大小 2 屏幕1/2大小 3 屏幕1/3大小 4 屏幕1/4大小 S 下一帧 [ -2秒 ] +2秒 ; -1秒 ' +1秒 下一个帧 -> -5秒 F ...

  3. SAP 透明表之间的关联字段

    VTTK-TPLST=TTDST-TPLST(装运点的关联表及描述表字段TTDST-BEZEI) VTTK-ROUTE=TVROT-ROUTE(装运线路关联表及描述表字段TVROT-BEZEI) VT ...

  4. 针对Xcode的警告忽略消除处理

    一.问题描述 html代码如下 <html> <head> <meta charset="utf-8"/> <title>我的网页& ...

  5. linux 配置tomcat运行远程监控(JMX)

    在实际使用中,我们经常要监控tomcat的运行性能.需要配置相应的参数提供远程连接来监控tomcat服务器的性能.本文详细介绍如何一步一步的配置tomcat相应参数.允许远程连接监控. 工具/原料 v ...

  6. HttpClient 3.X 4.3 4.x超时设置

    HttpClient 4.3.HttpClient这货和Lucene一样,每个版本的API都变化很大,这有点让人头疼.就好比创建一个HttpClient对象吧,每一个版本的都不一样, 3.X是这样的 ...

  7. IIS服务的部署

    1.安装 C:\Windows\Microsoft.NET\Framework\v4.0.30319 aspnet_regiis -i2.添加应用程序,选择Asp.net4.03.应用目录 IIS_U ...

  8. JS判断是否为IE浏览器 包含了IE11

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD ...

  9. poj1733(种类并查集+离散化)

    题目链接: http://poj.org/problem?id=1733 题意: 输入n表示有一个长度为n的0,1字符串, m表示接下来有m行输入, 接下来的m行输入中x, y, even表示第x到第 ...

  10. 三、jQuery--jQuery基础--jQuery基础课程--第3章 jQuery过滤性选择器

    1.:first过滤选择器 本章我们介绍过滤选择器,该类型的选择器是根据某过滤规则进行元素的匹配,书写时以“:”号开头,通常用于查找集合元素中的某一位置的单个元素. 在jQuery中,如果想得到一组相 ...