Ich habe eine Frage zu einer Absicht ... Ich versuche die SMS-App zu starten ...
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setType("vnd.android-dir/mms-sms");
int flags = Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP |
Intent.FLAG_ACTIVITY_CLEAR_TOP;
intent.setFlags(flags);
intent.setData(Uri.parse("content://sms/inbox"));
context.startActivity(intent);
Sie können also sehen, dass ich zu viele Dinge in meine Absicht gesteckt habe, aber das liegt daran, dass ich nicht weiß, wie ich es machen kann ... Danke
android
sms
android-intent
Olivier69
quelle
quelle
Antworten:
Um die SMS-Aktivität zu starten, benötigen Sie lediglich Folgendes:
Sie können Extras hinzufügen, um Ihre eigene Nachricht und dergleichen zu füllen
dann starten Sie einfachActivity mit der Absicht.
quelle
sendIntent.setData(Uri.parse("sms:" + phoneNumber));
Sie die Codezeile setData in (danke jqpubliq und jaydeepw)quelle
intent.setData(Uri.parse("smsto:" + phoneNumber));
android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW typ=vnd.android-dir/mms-sms (has extras) }
Wenn die Android-Version Kitkat oder höher ist, können Benutzer die Standard-SMS-Anwendung ändern. Diese Methode ruft die Standard-SMS-App ab und startet die Standard-SMS-App.
quelle
Das ist alles was du brauchst.
quelle
Wenn Sie die SMS-Kompositionsaktivität von einigen Ihrer anderen Aktivitäten aus starten möchten und außerdem eine Telefonnummer und einen SMS-Text übergeben müssen, verwenden Sie diesen Code:
Hinweis: Hier ist das
sms_body
undsmsto:
die Taste zum Erkennen des Textes und der Telefonnummer bei der SMS-Erstellungsaktivität. Seien Sie hier also vorsichtig.quelle
Hier ist der Code, der die SMS-Aktivität öffnet, die mit der Telefonnummer gefüllt ist, an die die SMS gesendet werden muss. Dies funktioniert sowohl auf dem Emulator als auch auf dem Gerät einwandfrei .
quelle
Verwenden
quelle
Ich benutze:
quelle
quelle
Der beste Weg, dies zu tun.
quelle
Sie können die Standard-SMS-App öffnen und Details wie folgt übergeben:
Hinweis: Wenn Sie an viele Nummern senden möchten, trennen Sie jede Nummer mit ";" innerhalb der Zeichenfolge
| Oder | Verwenden Sie diese Funktion:
quelle
In Kotlin kann dies einfach wie folgt implementiert werden:
Dies ist eine modifizierte Antwort von @mustafasevgi
quelle
quelle
Der beste Code, der mit der Standard-SMS-App funktioniert, ist.
quelle
Der folgende Code funktioniert unter Android 6.0.
Dadurch wird die Suchaktivität in der Standardnachrichtenanwendung mit den Konversationen geöffnet, die sich auf eine bestimmte bereitgestellte Zeichenfolge beziehen.
Sie können die Suchaktivität mit einer Absicht starten. Dadurch wird die Suchaktivität der Standardnachrichtenanwendung geöffnet. Um nun eine Liste bestimmter Konversationen in der Suchaktivität anzuzeigen, können Sie die Suchzeichenfolge als zusätzliche Zeichenfolge mit dem Schlüssel als angeben
wie im onCreate dieser Klasse gezeigt
Sie können auch die SENDER_ADDRESS der SMS als zusätzliche Zeichenfolge übergeben, in der alle Konversationen mit dieser bestimmten Absenderadresse aufgelistet werden.
Überprüfen Sie com.android.mms.ui.SearchActivityWeitere Informationen finden
Sie können diese Antwort auch überprüfen
quelle
auf Emulator diese Arbeit für mich
quelle
SMS-Absicht:
quelle
SMS verfassen:
quelle
Entweder können Sie dies verwenden, beide funktionieren gut auf Android über 4.4
oder
quelle
Sie können das folgende Codefragment verwenden, um Ihr Ziel zu erreichen:
Wenn Sie keinen Text möchten, entfernen Sie den Schlüssel sms_body.
quelle