Mam pytanie dotyczące zamiaru ... Próbuję uruchomić aplikację smsową ...
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);
więc widzisz, że włożyłem zbyt wiele rzeczy w swoje zamiary, ale to dlatego, że nie wiem, jak mogę to zrobić ... Dziękuję
android
sms
android-intent
Olivier69
źródło
źródło
Odpowiedzi:
Aby rozpocząć aktywność smsową, wystarczy:
Możesz dodać dodatki, aby wypełnić własną wiadomość i tym podobne
następnie po prostu rozpocznij Aktywność z zamiarem.
źródło
sendIntent.setData(Uri.parse("sms:" + phoneNumber));
(dziękuję jqpubliq i jaydeepw)źródło
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) }
Jeśli wersja Androida to KitKat lub nowsza, użytkownicy mogą zmienić domyślną aplikację sms. Ta metoda spowoduje pobranie domyślnej aplikacji sms i uruchomienie domyślnej aplikacji sms.
źródło
To wszystko, czego potrzebujesz.
źródło
Jeśli chcesz uruchomić tworzenie SMS-ów z innej aktywności, a także musisz podać numer telefonu i treść SMS-a, użyj tego kodu:
Uwaga: tutaj
sms_body
ismsto:
są klawiszami do rozpoznawania tekstu i numeru telefonu podczas tworzenia wiadomości SMS, więc bądź tutaj ostrożny.źródło
Oto kod, który otworzy aktywność SMS wstępnie wypełnioną numerem telefonu, na który ma zostać wysłana wiadomość SMS. Działa to dobrze na emulatorze, a także na urządzeniu .
źródło
Posługiwać się
źródło
Używam:
źródło
źródło
Najlepszy sposób na zrobienie tego.
źródło
Możesz otworzyć domyślną aplikację sms i podać szczegóły jak poniżej:
Uwaga: jeśli chcesz wysłać wiadomość na wiele numerów, oddziel każdy numer znakiem „;” wewnątrz ciągu
| Lub | Użyj tej funkcji:
źródło
W kotlin można to łatwo zaimplementować w następujący sposób:
To jest zmodyfikowana odpowiedź @mustafasevgi
źródło
źródło
Najlepszy kod, który działa z domyślną aplikacją SMS to.
źródło
Poniższy kod działa na Androidzie 6.0.
Otworzy aktywność wyszukiwania w domyślnej aplikacji do przesyłania wiadomości z konwersacjami związanymi z określonym podanym ciągiem.
Możesz rozpocząć wyszukiwanie z zamiarem. Otworzy się aktywność wyszukiwania w domyślnej aplikacji do przesyłania wiadomości. Teraz, aby wyświetlić listę określonych rozmów w działaniu wyszukiwania, możesz podać wyszukiwany ciąg jako dodatkowy ciąg z kluczem jako
jak pokazano w onCreate tej klasy
Możesz również przekazać SENDER_ADDRESS sms-a jako dodatkowy ciąg znaków, który będzie zawierał listę wszystkich rozmów z tym określonym adresem nadawcy.
Aby uzyskać więcej informacji, sprawdź com.android.mms.ui.SearchActivity
Możesz również sprawdzić tę odpowiedź
źródło
na emulatorze to działa u mnie
źródło
Zamiar SMS:
źródło
Utwórz SMS-a:
źródło
Albo możesz tego użyć, oba działają dobrze na Androidzie powyżej 4.4
lub
źródło
Aby osiągnąć swój cel, możesz użyć następującego fragmentu kodu:
Jeśli nie chcesz żadnego tekstu, usuń klucz sms_body.
źródło