Android如何集成極光短信驗(yàn)證
先借助Android studio工具新建一個(gè)新的空項(xiàng)目。
步驟一(獲取appkey)
1.在極光官網(wǎng)平臺上新建短信應(yīng)用(根據(jù)要求包名和應(yīng)用名稱填寫好)

2.獲取得到Jpush_AppKey

步驟二 (導(dǎo)入第三方庫和so文件)
1.用Android studio打開應(yīng)用
2.切換應(yīng)用狀態(tài)Android為Project狀態(tài)

3.在libs文件夾下把對應(yīng)的jar文件拷入 然后as libraries

步驟三(初始化以及調(diào)用)
1.新建Application初始化
public class MyApp extends Application {
@Override
public void onCreate() {
super.onCreate();
SMSSDK.getInstance().setDebugMode(true);
SMSSDK.getInstance().initSdk(this);
}
}
2.在activity中調(diào)用
public class MainActivity extends BaseActivity {
EditText edit_name;
EditText edit_pwd;
EditText sms;
String name;
String pwd;
Button get_sms;
Button btn_login;
private Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch (msg.what) {
case 1:
Toast.makeText(MainActivity.this, msg.obj.toString(), Toast.LENGTH_SHORT).show();
break;
case 2:
Toast.makeText(MainActivity.this, msg.obj.toString(), Toast.LENGTH_SHORT).show();
break;
case 3:
Toast.makeText(MainActivity.this, msg.obj.toString(), Toast.LENGTH_SHORT).show();
break;
case 4:
Toast.makeText(MainActivity.this, msg.obj.toString(), Toast.LENGTH_SHORT).show();
break;
}
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
init();
}
private void init() {
edit_name = (EditText) findViewById(R.id.edit_name);
edit_pwd = (EditText) findViewById(R.id.edit_pwd);
sms = (EditText) findViewById(R.id.sms);
get_sms = (Button) findViewById(R.id.get_sms);
btn_login = (Button) findViewById(R.id.btn_login);
get_sms.setOnClickListener(new GetSmsClickListener());
btn_login.setOnClickListener(new LoginClickListener());
}
public class GetSmsClickListener implements View.OnClickListener {
@Override
public void onClick(View view) {
name = edit_name.getText().toString().trim();
pwd = edit_pwd.getText().toString().trim();
if (name.equals("")) {
edit_name.requestFocus();
} else if (pwd.equals("")) {
edit_pwd.requestFocus();
} else {
new Thread(new Runnable() {
@Override
public void run() {
try {
GetSmsCode(name, pwd);
} catch (Exception ex) {
ex.printStackTrace();
}
}
}).start();
}
}
}
private void GetSmsCode(String name, String pwd) {
GetCode(this.name, this.pwd, new GetCodeListener() {
@Override
public void getCodeSuccess(String s) {
Message msg = Message.obtain();
msg.obj = s;
msg.what = 1;
handler.sendMessage(msg);
}
@Override
public void getCodeFail(String s) {
Message msg = Message.obtain();
msg.obj = s;
msg.what = 2;
handler.sendMessage(msg);
}
});
}
public class LoginClickListener implements View.OnClickListener {
@Override
public void onClick(View view) {
final String code = sms.getText().toString().trim();
name = edit_name.getText().toString().trim();
pwd = edit_pwd.getText().toString().trim();
if (name.equals("")) {
edit_name.requestFocus();
} else if (pwd.equals("")) {
edit_pwd.requestFocus();
} else if (code.equals("")) {
sms.requestFocus();
} else {
new Thread(new Runnable() {
@Override
public void run() {
try {
CheckSmsCode(name, pwd, code);
} catch (Exception ex) {
ex.printStackTrace();
}
}
}).start();
}
}
}
private void CheckSmsCode(String name, String pwd, String code) {
CheckCode(this.name, this.pwd, code, new CheckCodeListener() {
@Override
public void checkCodeSuccess(String s) {
Message msg = Message.obtain();
msg.obj = s;
msg.what = 3;
handler.sendMessage(msg);
}
@Override
public void checkCodeFail(String s) {
Message msg = Message.obtain();
msg.obj = s;
msg.what = 4;
handler.sendMessage(msg);
}
});
}
}
步驟四(填寫配置文件)
1.配置應(yīng)用權(quán)限
<uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.READ_PHONE_STATE"/> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
2.配置meta (appkey 從平臺上新建的對應(yīng)應(yīng)用中來)
<meta-data android:name="JPUSH_APPKEY" android:value="You JPUSH_APPKEY"/>
步驟五(調(diào)試)
1.點(diǎn)擊獲取密碼按鈕獲取短信信息

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Android短信驗(yàn)證碼(用的Mob短信驗(yàn)證)
- Android實(shí)現(xiàn)發(fā)送短信驗(yàn)證碼倒計(jì)時(shí)功能示例
- Android自動填充短信驗(yàn)證碼功能(demo)
- Android利用CursorLoader實(shí)現(xiàn)短信驗(yàn)證碼自動填寫
- Android獲取短信驗(yàn)證碼的實(shí)現(xiàn)方法
- Android使用第三方服務(wù)器Bmob實(shí)現(xiàn)發(fā)送短信驗(yàn)證碼
- Android中用Bmob實(shí)現(xiàn)短信驗(yàn)證碼功能的方法詳解
- Android 短信驗(yàn)證碼自動填寫
相關(guān)文章
Android利用WindowManager實(shí)現(xiàn)懸浮窗
這篇文章主要為大家詳細(xì)介紹了Android利用WindowManager實(shí)現(xiàn)懸浮窗效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-07-07
Kotlin淺析延遲初始化與密封類的實(shí)現(xiàn)方法
Kotlin語言的許多特性,包括變量不可變,變量不可為空,等等。這些特性都是為了盡可能地保證程序安全而設(shè)計(jì)的,但是有些時(shí)候這些特性也會在編碼時(shí)給我們帶來不少的麻煩,下面我們來了解延遲初始化和密封類的特點(diǎn)2022-08-08
Flutter開發(fā)之設(shè)置應(yīng)用名稱及圖標(biāo)的教程
這篇文章主要介紹了Flutter設(shè)置應(yīng)用名稱及圖標(biāo)的方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04
Android實(shí)現(xiàn)與Apache Tomcat服務(wù)器數(shù)據(jù)交互(MySql數(shù)據(jù)庫)
本篇文章主要介紹了Android實(shí)現(xiàn)與Apache Tomcat服務(wù)器數(shù)據(jù)交互(MySql數(shù)據(jù)庫),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06
Android Map新用法:MapFragment應(yīng)用介紹
MapView ,MapActivity 這種的局限在于,必須要繼承MapActivity,否則無法使用MapView,但是,MapFragment 這種的局限在于,必須要安裝Google Play Service ,也就是說必須是原生rom。而且sdk要在12以上2013-01-01
Android開發(fā)中多進(jìn)程共享數(shù)據(jù)簡析
這篇文章主要為大家簡單分析Android開發(fā)中多進(jìn)程共享數(shù)據(jù),怎么做才能讓這兩邊共享數(shù)據(jù),感興趣的小伙伴們可以參考一下2016-04-04

