完整项目短信验证码自动读取

地址:https://github.com/wangsijie0415/ReciiveSMSCode
调起系统短信接收广播

intentFilter = new IntentFilter();
intentFilter.addAction("android.provider.Telephony.SMS_RECEIVED");
intentFilter.setPriority(Integer.MAX_VALUE);
registerReceiver(receiver, intentFilter);

广播接收处理

private BroadcastReceiver receiver = new BroadcastReceiver() {     
    @Override    
public void onReceive(Context context, Intent intent) {      
      Object[] objs = (Object[]) intent.getExtras().get("pdus");        
      String format = intent.getStringExtra("format");//23以后需要的       
 if(format != null){           
     Log.e("format", format);       
 }       
 for (Object obj : objs) {          
          byte[] pdu = (byte[]) obj;   
           SmsMessage sms = null;           
 if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {               
       sms = SmsMessage.createFromPdu(pdu,format);//API23以后修改成这个            
}else{                
      sms = SmsMessage.createFromPdu(pdu);         
   }           
     // 短信的内容         
     String message = sms.getMessageBody();          
      Log.e("logo", "message     " + message);      // 短息的手机号。。+86头?           
     String from = sms.getOriginatingAddress();           
     Log.e("logo", "from     " + from);           
     if (!TextUtils.isEmpty(from)) {               
       String code = patternCode(message);              
      if (!TextUtils.isEmpty(code)) {                   
           smsContent = code;                   
           handler.sendEmptyMessage(1);               
         }          
      }       
   }    
}};

设置验证码:

private Handler handler = new Handler() {   
 public void handleMessage(android.os.Message msg) {        
          code.setText(smsContent);
    }
};

本站以现代、古代情诗为主,情诗网创办于2013年,以原创爱情诗歌、经典情诗、现代情诗、古代情诗、英文情诗、情诗绝句为主并收集古诗、古诗词、诗歌大全、诗词名句的文学门户。方便您下次继续阅读;可以放在浏览器的收藏夹中(快捷键Ctrl+D);或者看到喜欢或者有趣的诗词可以通过分享按钮给你的好友分享;情诗网是目前最全情诗大全网站之一。并欢迎广大诗歌爱好者阅览投稿!喜欢本站的话请大家把本站告诉给你朋友哦!地址是 www.qingshiwang.com !