Ich möchte eine SMS in meiner App erhalten, aber ich möchte nicht, dass mein Android eine Benachrichtigung über dieses Ereignis anzeigt. Algorithmus:
1) Empfange SMS (ist in Ordnung)
2) Wenn es sich um eine SMS mit speziellem Content-Format handelt (für meine App) - bearbeite es mit meiner App und zeige keine Benachrichtigung an.
3) Wenn dies eine einfache Nachricht ist - ich möchte sie nicht verarbeiten, so muss eine Benachrichtigung angezeigt werden.
Ich habe versucht, eine georderte Sendung zu verwenden, aber es hilft nicht. Irgendwo habe ich gelesen, dass die Sendung von SMS_RECEIVE nicht bestellt ist, aber ich sah einige Apps, die SMS ohne Benachrichtigung empfangen können.
Kann mir jemand helfen oder mir den richtigen Weg zeigen, dieses Problem zu lösen?
Danke.
Upd .: Aufruf von abortBroadcast () in Boradcast hilft nicht
setze Priorität in deinem Absichtsfilter // in Manifest
%Vor%// im Broadcast-Empfänger
%Vor%Dies sollte möglich sein, indem Sie Ihre App für den Empfang von SMS-Nachrichten registrieren und dann abortBroadcast () verwenden, wenn Sie feststellen, dass Ihre Nachricht angekommen ist. Sie sagen abortBroadcast () funktioniert nicht - wird die SMS definitiv von Ihrem SMS-Empfänger behandelt?
Für alle anderen, die das tun wollen, lesen Sie weiter ...
Deklarieren Sie zuerst den SMS-Empfänger in Ihrer AndroidManifest.xml und stellen Sie sicher, dass die App die Berechtigung zum Empfangen von SMS-Nachrichten hat.
%Vor%Hier ist ein Beispielcode für die SMS-Nachrichten:
%Vor%Du solltest das nicht tun. Andere Apps möchten möglicherweise die SMS_RECEIVED-Übertragung empfangen oder müssen sie empfangen. Wird es abgebrochen, werden Apps von Drittanbietern nicht ordnungsgemäß ausgeführt. Dies ist eine schlechte Art zu programmieren. Sie sollten nur von Ihnen erstellte Broadcasts abbrechen, nicht System-Broadcasts. Ich weiß nicht, warum das Android OS dies ermöglicht.
nicht sicher, ob ich genau weiß, was Sie zu tun versuchen, aber von dem, was ich verstehe, möchten Sie nur wissen, wie Sie keine Benachrichtigung senden?
Warum können Sie nicht einfach tun:
%Vor%Wenn du meinst, dass du das OS davon abhalten willst, es zu senden, hast du vielleicht kein Glück, weil ich nicht glaube, dass du das tun kannst
Sie machen einen Fehler, weil du abortBroadcast () ausgelöst hast; Wenn Ihre spezielle Nachricht, so dass die Nachrichtenübertragung abgebrochen wird, daher keine SMS-Benachrichtigung angezeigt wird, und SMS nicht im Posteingang gespeichert wird, Sie müssen Ihre eigene Benachrichtigung in "onRecive" machen, wenn Ihre spezielle Nachricht empfangen wird. Beispiel:
%Vor%Ich hoffe, das wird Ihr Problem lösen
Tags und Links android sms broadcastreceiver