第一步到http://www.mobile.com下载短信验证码的SDK,然后创建应用程序,然后快速集成SDK,
首先创建一个布局Button我这里采用的是LinearLayout
<?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:orientation="vertical" ><Buttonandroid:id="@+id/btn_sms_phone"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="短信注册火手机号码验证"android:textColor="#464646"android:textSize="16sp" android:onClick="SmsPhone"/></LinearLayout>
然后初始化sdk
然后点击按钮进行手机注册
public void SmsPhone(View view) {
// 短信注册事件
// 打开注册页面
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");// 提交用户信息
submitUserInfo(country, phone);
}
}
});
registerPage.show(SMSCodeActivity.this);
}提交用户信息给服务器/**
*
* @param country
* 国家
* @param phone
* 手机号码
*/
public void submitUserInfo(String country, String phone) {
Random random = new Random();
String uid = Math.abs(random.nextInt()) + "";
String nickName = "IMOOC";
// 提交注册用户信息 手机号码 国家
SMSSDK.submitUserInfo(uid, nickName, null, country, phone);}
需要注意的是记得配置AndroidMainfest.xml
<uses-permission android:name="android.permission.RECORD_AUDIO" /><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.GET_TASKS" /><uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /><activityandroid:name="com.mob.tools.MobUIShell"android:configChanges="keyboardHidden|orientation|screenSize"android:theme="@android:style/Theme.Translucent.NoTitleBar"android:windowSoftInputMode="stateHidden|adjustResize" /></application>
切记这个Activity不能修改
效果实现如下