Wie übermittele ich BroadcastReceiver?

8

Was ich versuche ist, dass die Nummern, an die meine Anwendung Nachrichten sendet, an den BraodcastReceiver übergeben werden ... aber entweder werde ich null oder BroadcastReceiver stürzt einfach ab ..

hier ist meine Absicht für BroadcastReceiver von CreateMessage-Klasse ...

%Vor%

Und in BroadcastReceiver (SmsReceiver Klasse) versuche ich, Absicht wie folgt zu fangen ..

%Vor%

Meine Manifestdatei:

%Vor%

Ich habe bereits alle Antworten mit Stackoverflow ausprobiert ... Aber keine Verwendung ...

Bitte sagt mir, wo ich falsch liege ... Danke!

Fehlerprotokoll:

%Vor%     
Ahmed S. Durrani 05.04.2012, 16:35
quelle

5 Antworten

23

Nach dem Beispiel von @Jason ... Ich habe das gemacht ...

In MainActivity oder einer beliebigen Aktivität, von der aus Sie eine Absicht senden möchten

%Vor%

und dann in meiner SmsReceiver Klasse habe ich das gemacht

%Vor%

Und in manifest.xml habe ich "my.action.string" hinzugefügt, obwohl es eine Option war ..

%Vor%

hat wie Charme funktioniert !!

    
Ahmed S. Durrani 07.04.2012, 10:37
quelle
0

Sie würden eine Sendung wie folgt senden:

%Vor%

Der Parameter action ist ein String , der mit der Aktion korreliert, mit der Sie BroadcastReceiver registriert haben. Also, wenn Sie Ihren Empfänger so registriert haben:

%Vor%

dann wäre action "com.myapp.myaction"

    
Jason Robinson 05.04.2012 17:51
quelle
0

Sie starten Activity anstatt Intent zu senden. Versuchen Sie,

zu ändern %Vor%

bis

%Vor%

AKTUALISIEREN :

Sie haben keine Aktion und keinen Komponentennamen für Intent festgelegt. Versuchen Sie, die Absicht wie folgt zu erstellen:

%Vor%     
pepyakin 05.04.2012 16:53
quelle
0

Ihr Problem ist sehr einfach. Es reicht, dass onRecive () -Codes wie folgt geändert werden:

%Vor%     
BinMan1 23.02.2016 05:13
quelle
-2

Verwenden Sie sendbroadcast statt startactivity.it wird funktionieren .. !!

    
saksham agarwal 25.03.2015 19:42
quelle