Mob短信验证

来源:互联网 发布:福建知天气 编辑:程序博客网 时间:2024/05/19 10:36

一、获取SDK

请至Mob官网下载最新SDK,解压后会看到以下目录结构:

 

QQ截图20170526142919

 

SMSSDK下存放的是短信SDK的全部内容。

二、导入SDK

1.Eclipse

 

Eclipse版本的SMSSDK目录下包含两个工程:

QQ截图20170526145621

SMSSDK:短信SDK核心库(必须)

ShortMessageSDKGUI:我们提供的开源GUI库(非必须)

如果你不想定制自己的UI,可以直接使用我们提供的ShortMessageSDKGUI,否则,不需要导入ShortMessageSDKGUI。接下来,我们以使用ShortMessageSDKGUI为例说明。

1.1、首先将上述两个工程导入Eclipse:

smssdk_导入eclipse

1.2、将上述两个工程挂接到你的工程上:

右键你的工程 → Properties → Android

smssdk_挂接gui

同时将SMSSDK挂接到ShortMessageSDKGUI上:

smssdk_sdk挂到gui上

注意:如果你不需要使用ShortMessageSDKGUI,请直接将SMSSDK挂接到你的项目上。

2.Android Studio

AS版本的SMSSDK目录下包含以下内容:

smssdk_as目录结构

MobCommons.jar:Mob 通用公共库(必须)

MobTools.jar:Mob 工具公共库(必须)

SMSSDK-<version>.aar:SMSSDK 核心(必须)

SMSSDKGUI-<version>.aar:SMSSDK GUI 开源库(非必须)

HowToUse.txt:使用说明

注意:如果你同时使用ShareSDK,保留一份公共库就行(公共库版本一致或兼容)。

2.1、将以上文件按需放入Android Studio项目所要使用SMSSDK的Module所在的Libs里面:

smssdk_导入as项目

2.2、在Module的build.gradle里面将libs加入仓库(repositories):

repositories{    flatDir{        dirs 'libs' //就是你放aar的目录地址    }}

2.3、在Module的build.gradle里面添加依赖(dependencies ):

dependencies {    ....//你的其他依赖    compile name:'SMSSDK-<version>',ext:'aar'    compile name:'SMSSDKGUI-<version>',ext:'aar'}

最终,你的build.gradle看起来应该像这样:

smssdk_as build文件

三、添加代码

1.配置AndroidManifest.xml

1.1、添加以下权限:

<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" />

1.2、添加以下Activity:

<activity   android:name="com.mob.tools.MobUIShell"   android:theme="@android:style/Theme.Translucent.NoTitleBar"   android:configChanges="keyboardHidden|orientation|screenSize"   android:windowSoftInputMode="stateHidden|adjustResize"/>

1.3、在Application节点下添加以下属性:

android:name="com.mob.MobApplication"

1.4、在Application节点下添加以下meta-data:

<!-- 通过AndroidManifest配置AppKey和AppSecret,如果你选择通过代码配置,则不需要配置以下meta-data --><meta-data android:name="Mob-AppKey" android:value="你的AppKey"/><meta-data android:name="Mob-AppSecret" android:value="你的AppSecret"/>

最终,你的AndroidManifest.xml看起来应该像这样:

smssd_manifest


代码:

RegisterPage registerPage = new RegisterPage();
// 回调函数
registerPage.setRegisterCallback(new EventHandler() {
public void afterEvent(int event, int result, Object data) {
// 解析结果
if (result == SMSSDK.RESULT_COMPLETE) {
HashMap<String,Object> maps = (HashMap<String, Object>) data;
String country = (String) maps.get("country");
String phone = (String) maps.get("phone");
SMSSDK.submitUserInfo(new Random().nextInt()+"", "ww22002", null, country, phone);
}
}
});
registerPage.show(MainActivity.this);