2016-07-20 20 views
1

Ich möchte eine App schreiben, die etwas tun wird, wenn sie eine Nachricht erhalten hat. Ich habe google für die Antwort für viele Tage und fand eine Lösung wie diese: Link, aber es funktioniert nicht auf Android 6 oder Marshmallow überhaupt. Gibt es also eine Möglichkeit, meine App zu aktivieren, um etwas zu tun, wenn sie eine Nachricht auf Android Marshmallow erhielt?So empfangen Sie eingehende Nachrichten auf Android [MM]?

+0

Ihre App hat benötigen Zeit, die Erlaubnis für SMS lesen laufen. – iAndroid

+0

@iAndroid, ja, ich habe diese Erlaubnis, SMS lesen, SMS erhalten, SMS gesendet. Aber es funktionierte nicht auf Android MM, sondern auf der niedrigeren Version wie Jellybean statt. –

+0

können Sie Code teilen? – iAndroid

Antwort

1

Below Beispiel Arbeit für mich in MM auch

BroadcastReceiver broadcastReceiver = new BroadcastReceiver() { 
       @Override 
       public void onReceive(Context context, Intent intent) { 
        if (Telephony.Sms.Intents.SMS_RECEIVED_ACTION.equals(intent.getAction())) { 
         final Bundle bundle = intent.getExtras(); 
         try { 
          if (bundle != null) { 
           final Object[] pdusObj = (Object[]) bundle.get("pdus"); 
           for (int i = 0; i < pdusObj.length; i++) { 
            SmsMessage currentMessage = SmsMessage.createFromPdu((byte[]) pdusObj[i]); 
            String phoneNumber = currentMessage.getDisplayOriginatingAddress(); 
            String senderNum = phoneNumber; 
            String message = currentMessage.getDisplayMessageBody(); 
            Logger.e("sender Num" + senderNum); 
            Logger.e("message" + message); 
           } 
          } 

         } catch (Exception e) { 
          e.printStackTrace(); 
         } 
        } 
       } 
      }; 

      IntentFilter filter = new IntentFilter(Telephony.Sms.Intents.SMS_RECEIVED_ACTION); 
      registerReceiver(broadcastReceiver, filter); 

onDestroy Methode austragen Rundfunkempfänger

unregisterReceiver(broadcastReceiver); 
+0

Bitte lesen Sie Frage Kommentar – iAndroid

+0

Code ist ähnlich zu dem in der Verbindung, die ich auch teste, mein Freund. : ( –

+0

es funktioniert für mich so werde ich mit dir teilen. – iAndroid