Frage

ich eine BroadcastReceiver erstellt und konfiguriert es mit einem android.provider.Telephony.SMS_RECEIVED Action-Filter, so dass es jedes Mal das Telefon genannt wird erhält ein Text.

Gibt es ein Ereignis / Aktion oder andere Art und Weise für meine Anwendung benachrichtigt werden, sobald das Telefon sendet ein Text (vorzugsweise unabhängig von der Anwendung, die es sendet)?

Bisher ist die einzige Option, die ich sehe, ist der Content-Provider für content://sms/sent abzufragen, die mich nicht einmal alle gesendeten Texte, weil Anwendungen können wählen, nicht um es dort zu setzen.

War es hilfreich?

Lösung

Leider gibt es (noch) keine Möglichkeit, ein BroadcastReceiver zu implementieren weil die Standard-SMS-Anwendung verwendet ein SmsManger die Nachrichten zu senden, aber gibt konkrete interne Klassen für die gesendet und zug Absichten (SmsReceiver.class und MessageStatusReceiver.class respectively). Nicht, dass es ist ein Trost, aber Sie können den folgenden Kommentar in der Sms Anwendung Quelle :

// TODO: Fix: It should not be necessary to
// specify the class in this intent.  Doing that
// unnecessarily limits customizability.

Die beste Alternative scheint Polling content://sms/sent zu sein, möglicherweise eine mit ContentObserver .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top