mob短信验证码功能集成 ------未上线
2017-06-01 13:15
495 查看
一.在使用Mob平台短信验证码时需要到官网注册账号然后获取开发者资格申请AppKey和AppSecret
注册Mob账号官网地址:http://www.mob.com 注册之后点击进入后台
进入后台然后点击短信验证码选择启用点击进入
获取AppKey和AppSecret如下
二.获取Key之后下载我们需要的SDK然后进行开发地址:http://www.mob.com/#/downloadDetail/SMS/Android可以选择Eclipse和Android
Studio两个版本的我们选择Android Studio的
新建一个Android Studio项目然后把我们下载的SDK SMSSDK文件夹中的jar包和SMSSDK.aar文件放入我们的项目libs中如下:
然后在build.gradle中添加依赖注意aar文件是你下载SDK时的版本
Dependencies{
}
三、布局文件代码:
四、Activity代码:
注册Mob账号官网地址:http://www.mob.com 注册之后点击进入后台
进入后台然后点击短信验证码选择启用点击进入
获取AppKey和AppSecret如下
二.获取Key之后下载我们需要的SDK然后进行开发地址:http://www.mob.com/#/downloadDetail/SMS/Android可以选择Eclipse和Android
Studio两个版本的我们选择Android Studio的
新建一个Android Studio项目然后把我们下载的SDK SMSSDK文件夹中的jar包和SMSSDK.aar文件放入我们的项目libs中如下:
然后在build.gradle中添加依赖注意aar文件是你下载SDK时的版本
可以在下面复制:
repositories { flatDir { dirs 'libs' //你的aar目录地址
}}
Dependencies{
compile name: 'SMSSDK-2.1.4', ext: 'aar' compile name: 'SMSSDKGUI-2.1.4', ext: 'aar'
}
三、布局文件代码:
<?xml version="1.0" encoding= "utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginLeft="30dp" android:layout_marginRight="30dp" android:gravity="center" android:orientation="vertical"> <EditText android:id="@+id/userName" android:layout_width="match_parent" android:layout_height="wrap_content" android:padding="10dp" android:hint="请输入手机号" android:layout_gravity="center_vertical" android:singleLine="true" android:textSize="16sp" /> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:layout_marginTop="20dp"> <EditText android:id="@+id/validateNum" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="2" android:padding="10dp" android:hint="请输入验证码" android:layout_gravity="center_vertical" android:layout_marginRight="10dp" android:singleLine="true" android:textSize="16sp" /> <Button android:id="@+id/validateNum_btn" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:text="@string/get" /> </LinearLayout>
四、Activity代码:
package com.example.administrator.smsyzm; import android.content.Intent; import android.os.Bundle; import android.os.CountDownTimer; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; import java.util.regex.Matcher; import java.util.regex.Pattern; import cn.smssdk.EventHandler; import cn.smssdk.SMSSDK; import static com.example.administrator.smsyzm.R.id.userName; public class MainActivity extends AppCompatActivity implements View.OnClickListener{ private static final String appkey="1e43cb0abcd81"; private static final String appsecret="bf3e127349f0d850cd9999a3f02a2de4"; private EditText username,validateNum; private Button validateNum_btn,landing_btn; public EventHandler eh; //事件接收器 private TimeCount mTimeCount;//计时器 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); SMSSDK.initSDK(this, appkey,appsecret); initEvent(); init(); } private void init() { 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) { //提交验证码成功 startActivity(new Intent(MainActivity. this, LoginActivity.class)); //页面跳转 }else if (event == SMSSDK.EVENT_GET_VERIFICATION_CODE){ //获取验证码成功 }else if (event ==SMSSDK.EVENT_GET_SUPPORTED_COUNTRIES){ //返回支持发送验证码的国家列表 } }else{ ((Throwable)data).printStackTrace(); } } }; SMSSDK.registerEventHandler(eh); //注册短信回调 } private void initEvent() { validateNum_btn=(Button) findViewById(R.id.validateNum_btn); landing_btn=(Button) findViewById(R.id.landing_btn); username=(EditText) findViewById(userName); validateNum=(EditText) findViewById(R.id.validateNum); validateNum_btn.setOnClickListener(this); mTimeCount = new TimeCount(60000, 1000); } @Override public void onClick(View v) { switch (v.getId()){ case R.id.validateNum_btn: // SMSSDK.getSupportedCountries();//获取短信目前支持的国家列表 if(!username.getText().toString().trim().equals("")){ if (checkTel(username.getText().toString().trim())) { SMSSDK.getVerificationCode("+86",username.getText().toString()); //获取验证码 mTimeCount.start(); }else{ Toast.makeText(MainActivity.this, "请输入正确的手机号码", Toast.LENGTH_SHORT).show(); } }else{ Toast.makeText(MainActivity.this, "请输入手机号码", Toast.LENGTH_SHORT).show(); } break; } } /** * 正则匹配手机号码 * @param tel * @return */ public boolean checkTel(String tel){ Pattern p = Pattern.compile("^[1][3,4,5,7,8][0-9]{9}$"); Matcher matcher = p.matcher(tel); return matcher.matches(); } @Override protected void onDestroy() { super.onDestroy(); SMSSDK.unregisterEventHandler(eh); } /** * 计时器 */ class TimeCount extends CountDownTimer { public TimeCount(long millisInFuture, long countDownInterval) { super(millisInFuture, countDownInterval); } @Override public void onTick(long l) { validateNum_btn.setClickable(false); validateNum_btn.setText(l/1000 + "秒后重新获取"); } @Override public void onFinish() { validateNum_btn.setClickable(true); validateNum_btn.setText("获取验证码"); } } } 五、运行结果如下,界面很low功能实现了 六、短信样式: 注:因为这只是一个测试的demo没办法上线,所以没办法修改短信的样式,想要修改样式上线自定义签名即可。
相关文章推荐
- 集成Mob第三方的短信验证码功能
- Android开发:app工程集成mob短信验证码功能
- Android开发工程中集成mob短信验证码功能的方法
- 安卓短信验证功能-----快速集成Mob之SecurityCodeSDK
- android_app开发集成mob短信验证码功能
- Android开发工程中集成mob短信验证码功能的方法
- 短信验证安卓集成mob.com
- Android Studio Mob快速集成短信验证(图文教程)
- 用MOB实例开发实现短信验证功能
- ShareSDK上线运营统计、手游录像、短信验证码三大功能
- mob短信验证简单集成
- Android-Studio 用ShareSDK集成社会化分享,短信验证码,视频录制功能
- Android实战简易教程<三十九>(第三方短信验证平台Mob和验证码自动填入功能结合实例)
- 快速集成Mob短信验证(附源码)
- 快速集成Mob短信验证(附源码)
- 使用mob为Android应用增加短信验证功能
- android集成短信验证功能(Eclipse下)
- MOB短信验证码SDK集成
- Android集成获取短信验证码功能