Android開發中通過廣播接受短信並提取短信內容

通過廣播監聽短信消息


註冊一個廣播:

  1. <receiver android:name="com.guoxj.mobilesafer.SmsReciver" >  
  2.            <intent-filter android:priority="1000">  
  3.                <action android:name="android.provider.Telephony.SMS_RECEIVED" />  
  4.            </intent-filter>  
  5.        </receiver>  

SmsReceiver


  1. public class SmsReciver extends BroadcastReceiver {  
  2.   
  3.     @Override  
  4.     public void onReceive(Context context, Intent intent) {  
  5.         Bundle bundle = intent.getExtras();  
  6.         SmsMessage msg = null;  
  7.         if (null != bundle) {  
  8.             Object[] smsObj = (Object[]) bundle.get("pdus");  
  9.             for (Object object : smsObj) {  
  10.                 msg = SmsMessage.createFromPdu((byte[]) object);  
  11.             Date date = new Date(msg.getTimestampMillis());//時間  
  12.                 SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  
  13.                 String receiveTime = format.format(date);  
  14.                 System.out.println("number:" + msg.getOriginatingAddress()  
  15.                 + "   body:" + msg.getDisplayMessageBody() + "  time:"  
  16.                         + msg.getTimestampMillis());  
  17.                   
  18.                       
  19.                 }  
  20.                   
  21.             }  
  22.         }  
  23.     }  
  24.   

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章