短信验证

来源:互联网 发布:网络语 打脸 什么意思 编辑:程序博客网 时间:2024/05/22 04:56

步骤:

1.在mob.com后台新建应用获取对应的APPKEY和APPSECRET

2.在eclipse中导入SMSSDK(SMSSDK与短信验证的项目所属根目录必须一致)

3.将SMSSDK作为library导入项目中

4.短信验证的项目操作

(1)初始化SDK

SMSSDK.initSDK(this, APPKEY, APPSECRETE);

(2)配置信息

添加权限

 <!-- 权限 -->    <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.GET_TASKS" /><uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

注册Activity

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

(3)代码中使用

效果图









Java代码

package com.messagesecur;import android.os.Bundle;import java.util.HashMap;import java.util.Random;import android.app.Activity;import android.view.Menu;import android.view.View;import android.widget.Button;import cn.smssdk.EventHandler;import cn.smssdk.SMSSDK;import cn.smssdk.gui.RegisterPage;public class MainActivity extends Activity {Button mBtnBindPhone;String APPKEY = "e24980c866f0";String APPSECRETE = "1d248883aa514567906466a46aee280c";@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);//初始化SDKSMSSDK.initSDK(this, APPKEY, APPSECRETE);//配置信息mBtnBindPhone = (Button) this.findViewById(R.id.btn_binf_phone);mBtnBindPhone.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {//注册手机号RegisterPage registePage = new RegisterPage();//注册回调事件registePage.setRegisterCallback(new EventHandler(){//事件完成后回调@Overridepublic void afterEvent(int arg0, int arg1, Object arg2) {/* * arg0=event 发生的事件 * arg1=result 返回的结果 * arg2=data 键值对形式存在 *///判断结果是否已经完成if(arg1 == SMSSDK.RESULT_COMPLETE){//获取数据dataHashMap<String,Object> maps = (HashMap<String, Object>) arg2;//国家String country = (String) maps.get("country");//手机号String phone = (String) maps.get("phone");submieUserInfo(country, phone);}}});//显示注册事件registePage.show(MainActivity.this);}});}/** * 提交用户信息 * @param country * @param phone */public void submieUserInfo(String country, String phone){Random r = new Random();String uid = Math.abs(r.nextInt())+"";String nickName = "messageTest";SMSSDK.submitUserInfo(uid, nickName, null,country, phone);}}

配置信息

<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"    package="com.messagesecur"    android:versionCode="1"    android:versionName="1.0" >    <uses-sdk        android:minSdkVersion="8"        android:targetSdkVersion="17" />        <!-- 权限 -->    <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.GET_TASKS" /><uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />    <application        android:allowBackup="true"        android:icon="@drawable/ic_launcher"        android:label="@string/app_name"        android:theme="@style/AppTheme" >        <activity            android:name="com.messagesecur.MainActivity"            android:label="@string/app_name" >            <intent-filter>                <action android:name="android.intent.action.MAIN" />                <category android:name="android.intent.category.LAUNCHER" />            </intent-filter>        </activity>        <activityandroid:name="com.mob.tools.MobUIShell"android:theme="@android:style/Theme.Translucent.NoTitleBar"android:configChanges="keyboardHidden|orientation|screenSize"android:windowSoftInputMode="stateHidden|adjustResize"/>    </application></manifest>


0 0
原创粉丝点击