功能描述:
用户注册账号
用户填写手机号,点击获取验证码;用户手机会收到一条短信,填入短信内数字后可提交注册。
服务商选择
一大堆,费用从0.02到0.05不等,然而 Mob 免费。
Mob SDK集成
先注册一个Mob账号
注册登录后进入后台,新建一个应用,在概况中找到App Key和 App Secret。
下载Demo App体验一下
下载后安装。进入App,输入刚得到的 Key和 Secret即可正常使用。
输入手机号>点击下一步>弹出提示框>确认>收到手机短信>输入验证码>点击注册>成功!
集成SDK到自己的工程
- 下载Mob短信验证码SDK。下载下来的文档包括API说明文档和SDK。
- 使用Android Studio新建一个基础工程。
- 将SMSSDK内的四个文件添加到工程中的libs文件中,修改build.gradle(Module:xxx)
repositories{
flatDir{
dirs 'libs'
}
}
dependencies {
//其他依赖
compile(name:'SMSSDK-2.1.3', ext:'aar')
compile(name:'SMSSDKGUI-2.1.3', ext:'aar')
}
- 在Manifest中添加权限
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.READ_SMS" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.READ_CONTACTS"/>
- 在MainActivity中添加App Key和 App Secret
// 填写从短信SDK应用后台注册得到的APPKEY
private static String APPKEY = "xxx";
// 填写从短信SDK应用后台注册得到的APPSECRET
private static String APPSECRET = "xxx";
- 在onCreat方法中初始化SDK
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initSMSSDK();//短信验证码SDK初始化
}
initSMSSDK(){
SMSSDK.initSDK(this, APPKEY, APPSECRET, true);//短信验证码SDK初始化
...
}
至此SDK已经集成并初始化完毕。
使用内置页面体验短信验证功能
- 官方说明中有
短信SDK内置了开源的GUI功能,您可以通过调用下面的代码打开短信验证页面
所谓内置开源GUI,简单的意思就是他帮你写好了一个Activity,写好了布局写好了逻辑就等你在Manifest中注册一下就可以使用。
<activity
android:name="com.mob.tools.MobUIShell"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:configChanges="keyboardHidden|orientation|screenSize"
android:windowSoftInputMode="stateHidden|adjustResize"/>
2.在initSMSSDK(){}中添加以下代码
//实例一个官方给你写好的Activity,调用show方法展示该Activity
RegisterPage registerPage = new RegisterPage();
registerPage.show(this);//this是上下文context,报错的话请根据自己的代码自行修改
完整的initSMSSDK()方法如下所示
initSMSSDK(){
SMSSDK.initSDK(this, APPKEY, APPSECRET, true);
//在初始化之后调用
RegisterPage registerPage = new RegisterPage();
registerPage.show(this);
}
3.启动App然后点击按钮你就看到以下页面了。跟官方提供的Demo一模一样,尝试使用吧。
4.是否可以修改这个页面title和布局什么的呢,木知呢。想知道,自己去研究吧~
直接使用接口完成短信验证码请求和验证
见下一篇文章吧~