Android實(shí)現(xiàn)短信驗(yàn)證功能
本文實(shí)例為大家分享了Android實(shí)現(xiàn)短信驗(yàn)證功能的具體代碼,供大家參考,具體內(nèi)容如下
目標(biāo)效果:
點(diǎn)金綁定手機(jī)號(hào),輸入手機(jī)號(hào)點(diǎn)擊下一步,會(huì)收到一條驗(yàn)證碼,驗(yàn)證碼輸入正確則提示驗(yàn)證成功,如果已經(jīng)驗(yàn)證成功再次驗(yàn)證時(shí),提示已經(jīng)驗(yàn)證。
1.進(jìn)入mob.com,注冊(cè)賬號(hào),然后進(jìn)入控制臺(tái),點(diǎn)擊中間進(jìn)入短信驗(yàn)證區(qū)。
2.點(diǎn)擊左上角創(chuàng)建應(yīng)用。
3.創(chuàng)建成功會(huì)顯示應(yīng)用的密鑰,在初始化SDK中使用。
4.然后下載SDK.
5.下載后解壓,SMSSDK文件夾中有如圖兩個(gè)項(xiàng)目,打開(kāi)eclipse以Android項(xiàng)目形式導(dǎo)入。
6.eclipse中新建Android項(xiàng)目,右鍵項(xiàng)目,選擇-Properties-Android-Add,導(dǎo)入剛才添加的兩個(gè)項(xiàng)目。
7.配置完成,開(kāi)始編寫(xiě)代碼。
8.activity_main.xml頁(yè)面放置Button控件。
activity_mian.xml頁(yè)面:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" > <Button android:id="@+id/btn_bind_poone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:layout_marginTop="167dp" android:onClick="bindPhone" android:text="綁定手機(jī)號(hào)" /> </RelativeLayout>
9.MainActivity.java頁(yè)面進(jìn)行獲取信息并跳轉(zhuǎn)。
MainActivity.java頁(yè)面:
package com.example.notetest; import java.util.HashMap; import java.util.Random; import cn.smssdk.EventHandler; import cn.smssdk.SMSSDK; import cn.smssdk.gui.RegisterPage; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class MainActivity extends Activity { private Button btn_bind_phone; private String APPKEY="13e9653a7ff00"; private String APPSECRETE="a881cac45bce10a59ccf22203062e763"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //初始化 SMSSDK.initSDK(this,APPKEY,APPSECRETE); //配置信息 btn_bind_phone=(Button) findViewById(R.id.btn_bind_poone); btn_bind_phone.setOnClickListener(new OnClickListener() { @Override public void onClick(View view) { //注冊(cè)手機(jī)號(hào) RegisterPage registerPage=new RegisterPage(); //注冊(cè)回調(diào)事件 registerPage.setRegisterCallback(new EventHandler(){ //事件完成后調(diào)用 @Override public void afterEvent(int event, int result, Object data) { //判斷結(jié)果是否已經(jīng)完成 if(result==SMSSDK.RESULT_COMPLETE){ //獲取數(shù)據(jù)data HashMap<String,Object> maps=(HashMap<String, Object>) data; //國(guó)家信息 String country=(String) maps.get("country"); //手機(jī)號(hào)信息 String phone=(String) maps.get("phone"); //提交國(guó)家信息和手機(jī)號(hào)信息 submitUserInfo(country, phone); } } }); //顯示注冊(cè)界面 registerPage.show(MainActivity.this); } }); } /** * 提交用戶信息 * @param country國(guó)家 * @param phone手機(jī)號(hào) */ public void submitUserInfo(String country,String phone){ Random r=new Random();//隨機(jī)數(shù) String uid=Math.abs(r.nextInt())+"";//生成的隨機(jī)數(shù)轉(zhuǎn)換為正整數(shù)再轉(zhuǎn)換為字符串 String nickName="MyName";//昵稱 SMSSDK.submitUserInfo(uid, nickName, null, country, phone); } }
10.AndroidManifest.xml頁(yè)面添加權(quán)限。
<!-- 權(quán)限 --> <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"/>
11.AndroidManifest.xml頁(yè)面導(dǎo)入文件。
</application>標(biāo)簽內(nèi): <activity android:name="com.mob.tools.MobUIShell" android:configChanges="keyboardHidden|orientation|screenSize" android:theme="@android:style/Theme.Translucent.NoTitleBar" android:windowSoftInputMode="stateAlwaysHidden|adjustResize"/>
12.運(yùn)行就可以顯示目標(biāo)效果了。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Android自定義控件實(shí)現(xiàn)短信驗(yàn)證碼自動(dòng)填充
- Android實(shí)現(xiàn)頁(yè)面短信驗(yàn)證功能
- Android8.1 通過(guò)黑名單屏蔽系統(tǒng)短信和來(lái)電功能
- Android實(shí)現(xiàn)自動(dòng)填充短信驗(yàn)證碼功能
- Android BroadcastReceiver接收收到短信的廣播
- Android 如何使用短信鏈接打開(kāi)APP
- Android短信驗(yàn)證碼監(jiān)聽(tīng)解決onChange多次調(diào)用的方法
- Android MIUI通知類短信權(quán)限的坑
- Android短信備份及數(shù)據(jù)插入實(shí)現(xiàn)代碼解析
相關(guān)文章
Android 系統(tǒng)語(yǔ)言切換監(jiān)聽(tīng)和設(shè)置實(shí)例代碼
本篇文章主要介紹了Android 系統(tǒng)語(yǔ)言切換監(jiān)聽(tīng)和設(shè)置實(shí)例代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06Android學(xué)習(xí)教程之高仿安卓微信6.0(2)
這篇文章主要為大家詳細(xì)介紹了Android學(xué)習(xí)教程之高仿安卓微信6.0的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-11-11Android筆記之:深入ViewStub的應(yīng)用
本篇文章是對(duì)Android中ViewStub的應(yīng)用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05Android項(xiàng)目開(kāi)發(fā)常用工具類LightTaskUtils源碼介紹
LightTaskUtils是一個(gè)輕量級(jí)的線程管理工具,本文通過(guò)實(shí)例代碼給大家詳細(xì)介紹Android項(xiàng)目開(kāi)發(fā)常用工具類LightTaskUtils的相關(guān)知識(shí),感興趣的朋友一起看看吧2022-06-06Android開(kāi)發(fā)高級(jí)組件之自動(dòng)完成文本框(AutoCompleteTextView)用法示例【附源碼下載】
這篇文章主要介紹了Android開(kāi)發(fā)高級(jí)組件之自動(dòng)完成文本框(AutoCompleteTextView)用法,簡(jiǎn)單描述了自動(dòng)完成文本框的功能并結(jié)合實(shí)例形式分析了Android實(shí)現(xiàn)自動(dòng)完成文本框功能的具體步驟與相關(guān)操作技巧,并附帶源碼供讀者下載參考,需要的朋友可以參考下2018-01-01關(guān)于Android?Webview?設(shè)置Cookie問(wèn)題詳解
大家好,本篇文章是關(guān)于Android?Webview?設(shè)置Cookie問(wèn)題詳解,感興趣的同學(xué)可以看看,希望對(duì)你起到幫助,有用的話記得收藏,方便下次瀏覽2021-11-11Android實(shí)現(xiàn)類似execel的表格 能回顯并能修改表格內(nèi)容的方法
今天小編就為大家分享一篇Android實(shí)現(xiàn)類似execel的表格 能回顯并能修改表格內(nèi)容的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-08-08Android ViewPager向?qū)ы?yè)面制作方法
這篇文章主要為大家詳細(xì)介紹了Android ViewPager向?qū)ы?yè)面制作方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-11-11