第一步到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" >
<Button
android: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" />
<activity
android:name="com.mob.tools.MobUIShell"
android:configChanges="keyboardHidden|orientation|screenSize"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:windowSoftInputMode="stateHidden|adjustResize" />
</application>
切记这个Activity不能修改
效果实现如下