我们平常写项目的时候,总是会遇到需要通过注册自己的账号,那么这个时候,可以通过Mob平台获取验证码完成注册。非常好玩简单
首先,一定还是在http://www.mob.com/#/下载所需要的SDK(SMS For Android),有eclipse和studio版可供下载,本文主要围绕studio集成SDK。
点击头像,选择进入后台,开始创建应用:
创建应用非常简单,设置自己的应用名称,选择Android就ok了
现在就可以看到自己应用的AppKey 和 AppSecret,在后面会用到。现在正式开始集成SDK步骤
首先,导入SDK,
Eclipse:使用项目依赖的方式完成集成,把下载的SDK导入到eclipse,并在eclipse中依赖这个项目。
Studio:将下载的SDK中的libs文件夹的内容拷贝到项目的libs下,选择Add As Library
然后在app目录下的build.gradle中,加入红色框中的代码就行了
接下来,配置清单文件
打开"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”中添加activity
<activity
android:name="com.mob.tools.MobUIShell"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:configChanges="keyboardHidden|orientation|screenSize"
android:windowSoftInputMode="stateHidden|adjustResize"/>
配置完成后,开始添加代码:
在项目启动之前,需要先调用initSDK()方法;
package com.example.admin.mysms;
import android.app.Application;
import cn.smssdk.SMSSDK;
/**
* Created by admin on 2016/9/9.
*/
public class MyApp extends Application {
@Override
public void onCreate() {
super.onCreate();
SMSSDK.initSDK(this, "16f762f61b06e", "018bdc7ed49d6d8d8a66f6c58c112bb7");
}
}
短信SDK内置了开源的GUI功能,可以通过调用下面的代码代开短信验证页面:
package com.example.admin.mysms;
import android.app.Activity;
import android.os.Bundle;
import java.util.HashMap;
import cn.smssdk.EventHandler;
import cn.smssdk.SMSSDK;
import cn.smssdk.gui.RegisterPage;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//打开注册页面
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");
// 提交用户信息(此方法可以不调用)
registerUser(country, phone);
}
}
});
registerPage.show(this);
}
}
写到这里,你就可以运行获取验证码啦,这里的UI界面是SDK内置的;
同样的你也可以通过自定义UI界面达到这个效果,具体操作可以看下一篇博客
谢谢各位~撒花~
来源:CSDN
作者:yummy22
链接:https://blog.csdn.net/yummy22/article/details/52506160