今天呢,我们来讲一讲短信验证的实现
短信验证是企业给消费者(用户)的一个凭证,通过短信内容的码来验证身份。
它的使用范围非常的广,就目前来说,使用的最普遍的有各大银行网上银行、网上商城、团购网站、票务公司
等。短信验证码利用短信验证码来注册会员,大大降低了非法注册,烂注册的数据。
首先短信验证我们需要一个MOB的网址,进入网址之后,我们先要注册一个账号,
进入后台,添加一个应用,他会给出
然后点击MOB官网首页的
点进去之后我么会看到这么一个界面
我们可以根据我们的需求来下载SDK。
在下载好的SDK里面 我们找到这几个文件,
然后将导入工程的lib中,进行编译。
之后在我么创建好的工程中找到build.gradle,在里面的底部,加入
repositories{ flatDir{ dirs 'libs' //就是你放aar的目录地址 } }
在dependencies中添加compile name:'SMSSDK-3.0.0',ext:'aar' compile name:'SMSSDKGUI-3.0.0',ext:'aar'
这里需要注意代码里的3.0.0是要根据我们下载好的SDK来进行修改
接下来在AndroidManifest.xml中添加以下权限:
<uses-permission android:name="android.permission.READ_CONTACTS" /> <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.GET_TASKS" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
然后创建一个Application类 里面
MobSDK.init(this, "210bc97e33e86", "b27ba337e16c6d584346668860616e38");这里的两个字符串是从我们第一步进入后台创建应用之后给出的值(注意一定要把它替换)
最后一步,那就是在我们的MainActivity中的监听事件中添加以下代码
RegisterPage registerPage = new RegisterPage(); registerPage.setRegisterCallback(new EventHandler() { public void afterEvent(int event, int result, Object data) { // 解析注册结果 if (result == SMSSDK.RESULT_COMPLETE) { @SuppressWarnings("unchecked") HashMap<String,Object> phoneMap = (HashMap<String, Object>) data; String country = (String) phoneMap.get("country"); String phone = (String) phoneMap.get("phone"); } } }); registerPage.show(MainActivity.this);
就这样,我们的短信验证完成了。
当然,短信验证的实现还有其他方式,本文章只供参考。