MOB 短信验证
工具/原料
- Android Studio
- mob SDK中的jar 和.so文件
方法/步骤
- 1
把3个jar 放入libs
并添加依赖 在项目的build.gradle里面
在你的项目的main 目录下新建jniLibs 文件夹 注意:!!!! 一定是main 目录下 不是 java 文件夹
写代码!一步一步复制吧 SMSSDK.initSDK(this, " ", " ");
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; } }};
这里是获得验证码的请求: SMSSDK.getVerificationCode("86", phone, new OnSendMessageHandler() { @Override public boolean onSendMessage(String s, String s1) { return false; }});
这里是提交用户输入的验证码:SMSSDK.submitVerificationCode("86", phone, SMS);
对了 还有toast
private void toast(final String str) {
runOnUiThread(new Runnable() {
@Override
public void run() {
Toast.makeText(RegisterActivity.this, str, Toast.LENGTH_SHORT).show();
}
});
}
完整 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);
}
}
注意到mob后台去把只能短信 关闭哟
MOB 短信验证的更多相关文章
- Mob短信验证的配置的解释
原文地址:http://www.jb51.net/article/84946.htm 关于mob短信验证的解释: mob官方是这样写的: repositories{ flatDir{ dirs 'li ...
- Mob短信验证的具体使用
原文著作权地址:http://www.jb51.net/article/84946.htm demo地址:http://git.oschina.net/lizhanqi/MobSMSDemo 一.前言 ...
- 『实践』Android之短信验证码(用的Mob短信验证)
1.参考资料 Mob网站:http://www.mob.com/ Mob在Github上的例子:https://github.com/MobClub/SMSSDK-for-Android 教程:htt ...
- Mob.com 短信验证的简单使用
1.环境配置 http://wiki.sharesdk.cn/android-短信sdk集成文档/ a.sdk下载 http://www.mob.com/#/downloadDetail/SMS/an ...
- 【mob】Android短信验证+源码
在很多的应用当中,都涉及到了短信验证的功能,比如在注册或者找回密码的时候,那么我们如何通过第三方的平台来完成这个功能呢? 本面博文就实现短信验证,来做一个小的栗子. 第一步-下载开发包 第二步-将SD ...
- Android实战简易教程-第三十九枪(第三方短信验证平台Mob和验证码自己主动填入功能结合实例)
用户注冊或者找回password时通常会用到短信验证功能.这里我们使用第三方的短信平台进行验证实例. 我们用到第三方短信验证平台是Mob,地址为:http://mob.com/ 一.注冊用户.获取SD ...
- Mob 之 短信验证集成 SMSSDK
开相关发中总会遇到短信验证这些操作,这周没有来得及写新的东西,借此分享一篇以前学习短信验证的笔记,本文使用的是 Mob 提供的 SMSSDK . 下载 SMSSDK 官网下载地址:SMSSDK 集成 ...
- 完整的Android手机短信验证源码
短信验证功能我分两个模块来说,短信验证码的后台和代码实现短信验证码的功能. 一.短信验证码的后台 1.注册Mob账号:http://www.mob.com/#/login 2.注册成功之后, ...
- android短信验证
短信验证demo http://download.csdn.net/detail/crazy1235/8315279#comment 使用MOB平台开发,用法详见: http://blog.csdn. ...
随机推荐
- Linux集群配置ntp时间同步服务
集群中时间不同步有可能会让大数据的应用程序运行混乱,造成不可预知的问题,比如Hbase,当时间差别过大时就会挂掉,所以在大数据集群中,ntp服务,应该作为一种基础的服务,以下在演示在CentOS 7. ...
- 将jquery和公共样式缓存到localStorage,可以减少Http请求,从而优化页面加载时间
以下代码: //入口函数 if (window.localStorage) { initJs(); initCss("css", "/gfdzp201508257998/ ...
- spfa(模板)
spfa作为图论中的常用算法,深受各类出题人和各位OIer的喜爱: so,为了给大众创造福利,宝宝在此奉上spfa大发的思路和模板:以感谢社会, 感谢CCF,感谢CCTV, 感谢我的老师,感谢同学们, ...
- Parallels Destop软件配置
Parallels Destop个人感觉最好用的mac虚拟win软件 http://pan.baidu.com/s/1jHFwIGm 密码:ab21百度云下载(或者下载自己百度云的) 安装方法: 1. ...
- balabalabala
[微分享]:种子不落在肥土而落在瓦砾中,有生命力的种子决不会悲观和叹气,因为有了阻力才有磨炼.
- cell分割线宽度不满屏处理
if ([cell respondsToSelector:@selector(setSeparatorInset:)]) { [cell setSeparatorInset:UIEdgeInsetsZ ...
- vector的erase的用法
vector<string>::iterator it = v.erase(v.begin() + 3, v.begin() + 6); 可以直接从begin进行加减,比如我们要移除第3个 ...
- 3dmax导出3ds具有过多要导出的面超过64k解决方法
参考:http://blog.sina.com.cn/s/blog_7a71dd090100w3r0.html 修改器->网格编辑->ProOptimizer 选中对象, 原始模型 顶点数 ...
- 多线程编程3 - GCD
一.简介 在iOS所有实现多线程的方案中,GCD应该是最有魅力的,因为GCD本身是苹果公司为多核的并行运算提出的解决方案.GCD在工作时会自动利用更多的处理器核心,以充分利用更强大的机器.GCD是Gr ...
- wireshark_Couldn’t run /usr/sbin/dumpcap in child process: Permission denied
关于Wireshark出现:Couldn't run /usr/sbin/dumpcap in child process: Permission denied Are you a member of ...