編輯:關於Android編程
Android 短信驗證碼自動填寫
1.自定義Observer監聽短信數據庫變化(注意添加短信權限)
import android.app.Activity; import android.content.ContentResolver; import android.database.ContentObserver; import android.database.Cursor; import android.net.Uri; import android.os.Handler; import android.text.TextUtils; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * Created by 001 on 17/3/22. */ public class SmsObserver extends ContentObserver { public static final String SMS_URI_INBOX = "content://sms/inbox"; private Activity activity = null; private String smsContent = ""; private SmsListener listener; public SmsObserver(Activity activity, Handler handler, SmsListener listener) { super(handler); this.activity = activity; this.listener = listener; } @Override public void onChange(boolean selfChange) { super.onChange(selfChange); Cursor cursor = null; // 讀取收件箱中含有某關鍵詞的短信 ContentResolver contentResolver = activity.getContentResolver(); cursor = contentResolver.query(Uri.parse(SMS_URI_INBOX), new String[] { "_id", "address", "body", "read" }, "body like ? and read=?", new String[] { "%關鍵詞%", "0" }, "date desc"); if (cursor != null) { cursor.moveToFirst(); if (cursor.moveToFirst()) { String smsbody = cursor .getString(cursor.getColumnIndex("body")); String regEx = "[^0-9]"; Pattern p = Pattern.compile(regEx); Matcher m = p.matcher(smsbody.toString()); smsContent = m.replaceAll("").trim().toString(); if (!TextUtils.isEmpty(smsContent)) { listener.onResult(smsContent); } } } } /* * 短信回調接口 */ public interface SmsListener { /** * 接受sms狀態 * * @Title: onResult */ void onResult(String smsContent); } }
2.使用:
SmsObserver smsObserver = new SmsObserver(this, new Handler(), new SmsObserver.SmsListener() { @Override public void onResult(String smsContent) { //根據需求寫 //如:editText.setText(smsContent); } });this.getContentResolver().registerContentObserver(Uri.parse("content://sms/"), true, smsObserver);
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
支付寶支付在app項目中非常常見,現在把集成步驟提出了,雖然非常簡單,但是,希望對第一次集成支付的同學有幫助。要集成別人的東西,第一步當然是去看他的開發文檔,支付寶支付以
先明確幾個概念的區別: padding margin都是邊距的含義,關鍵問題得明白是什麼相對什麼的邊距. padding是控件的內容相對控件的邊緣的邊距. margin是
android客戶端生成本地驗證碼主要用來限制用戶隨意按請求按鈕,其實該示例也是來對自定義view的練練手而已,先給出效果圖吧其中可定制:*干擾線數目*干擾點數目*背景顏
首先設置兩個布局文件,一個布局文件進行輸入數據,獲取加法運算;另一個布局文件進行顯示最終結果。Activity1啟動Activity2,並傳遞計算結果值給Activity