国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android實現自動提取短信驗證碼功能

2020-04-11 10:53:53
字體:
來源:轉載
供稿:網友

本文實例講解了Android自動提取短信驗證碼解決方案,分享給大家供大家參考,具體內容如下

主要功能及優點
1.收到驗證碼短信后,自動提取短信中的驗證碼填寫到相應輸入框
2.可指定一個號碼,只讀取與他有關短信,避免提取來源錯誤
3.利用正則表達式,可匹配各種類型驗證碼

模塊集成關鍵步驟 
   將auto_getcode_demo中src包里的SMSContentObserver類復制到你的項目src包中

   在SMSContentObserver中:
   修改正則表達式內容來匹配自己想要獲取的字符串

private String patternCoder = "http://d{4}";  //正則表達式

  指定一個號碼,只讀取與他有關的新消息。

private boolean checkPhone(String phone) { // TODO Auto-generated method stub   String c_phone = "10690032980066";   if(c_phone.equals(phone) )  return true; return false;}

  指定一關鍵字符串,用來確認短信內容是我們想要去提取的

private boolean checkString(String message){ if(TextUtils.isEmpty(message))  return false; Pattern p = Pattern.compile("FinalShares"); //這個關鍵字符串可以自定義 Matcher matcher = p.matcher(message); if(matcher.find())  return true; return false;}

  在MainActivity中:
  注冊內容觀察者,用來監聽手機短信的變動

@Overridepublic void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); smsContentObserver = new SMSContentObserver(this, mHandler); // 創建1個對象     registerContentObservers() ;         //注冊內容觀察者}      private void registerContentObservers() { // ”表“內容觀察者 ,通過測試我發現只能監聽此Uri -----> content://sms // 監聽不到其他的Uri 比如說 content://sms/outbox Uri smsUri = Uri.parse("content://sms"); getContentResolver().registerContentObserver(smsUri, true,smsContentObserver);}

  創建一個handler來接收觀察者監聽傳來的信息,當接收到指定號碼短信時,自動獲得相應驗證碼并填寫到對應控件

private Handler mHandler = new Handler() {        public void handleMessage(Message msg) {   switch (msg.what) {    case MSG_OUTBOXCONTENT:    String outbox = smsContentObserver.getstrContent();     etSmsoutbox.setText(outbox);     break;    default:     break;   }  } };

  在AndroidManifest中添加相應權限

<uses-permission android:name="android.permission.READ_SMS"/><uses-permission android:name="android.permission.RECEIVE_SMS"/>

環境相關
開發平臺:Android

語言:    java

開發工具: eclipse

效果展示

以上就是本文的全部內容,希望對大家的學習有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 徐水县| 沧州市| 广河县| 额济纳旗| 河津市| 通州市| 克什克腾旗| 枞阳县| 黔西县| 临江市| 南充市| 综艺| 大庆市| 巫山县| 宁强县| 赤城县| 忻州市| 五指山市| 潼关县| 镇康县| 岳池县| 武汉市| 黑山县| 富阳市| 琼中| 通许县| 平阳县| 禹城市| 黎城县| 莫力| 靖江市| 北辰区| 于都县| 喀什市| 晋城| 来宾市| 临安市| 阳西县| 梨树县| 宕昌县| 政和县|