2013-08-21 20 views
0

Iam通過短信發送GPS數據。我正在使用abortBroadcast,並在Android清單android:優先接收機設置爲1000.所以當應用程序運行移動不接收除app.Please以外的其他消息的問題,請幫助我。如何避免短信到達本地收件箱中的特定應用程序在Android

 My code is as follows: 


    //This is Broadcast Receiver that I Registered in android manifest. 



     public class SimpleSmsReciever extends BroadcastReceiver { 

      public void onReceive(Context context, Intent intent) { 

      if (intent.getAction().equals("android.provider.Telephony.SMS_RECEIVED")) 
       { 

        Bundle bundle = intent.getExtras(); 
        if (bundle != null) { 
         Object[] pdusObj = (Object[]) bundle.get("pdus"); 
         SmsMessage[] messages = new SmsMessage[pdusObj.length]; 
         for (int i = 0; i < pdusObj.length; i++) { 
          messages[i] = SmsMessage.createFromPdu((byte[]) pdusObj[i]); 
         } 
         for (SmsMessage currentMessage : messages) { 
         sender = currentMessage.getDisplayOriginatingAddress(); 
         msg =msg+currentMessage.getDisplayMessageBody(); 
         } 

         this.abortBroadcast(); 
//Here Iam cancelling the broadcast. 


      } 
      }   

回答

0
Iam searching for string KEY_SENDER in the message if it exists then I am using abortbroadcast.So the messages with KEY_SENDER as substring will not reach native inbox.so the other messages will be reach to inbox. 



    int intIndex = msg.indexOf("KEY_SENDER"); 
    if(intIndex == - 1){ 
    System.out.println("KEY_SENDER not found"); 
    } 

    else 
    { 
    this.abortBroadcast(); 
    } 
相關問題