Jak użyć linku HTML, aby otworzyć aplikację sms z wstępnie wypełnioną treścią?
Wszystko, co przeczytałem, wskazuje, że sms: 18005555555? Body = bodyTextHere
Powinno działać, ale na iPhonie to nie działa. Jeśli wyjmę? Body = bodyTextHere i po prostu użyję sms: phonenumber, zadziała.
Widziałem kilka przypadków, w których kody QR robią to za pośrednictwem łącza safari. Jak są w stanie wstępnie wypełnić tekst podstawowy?
Odpowiedzi:
Okazuje się, że jest to w 100% możliwe, chociaż trochę zepsute.
Jeśli chcesz, aby działał na Androidzie, musisz użyć tego formatu:
<a href="sms:/* phone number here */?body=/* body text here */">Link</a>
Jeśli chcesz, aby działał na iOS, potrzebujesz tego:
<a href="sms:/* phone number here */;body=/* body text here */">Link</a>
Demo na żywo tutaj: http://bradorego.com/test/sms.html (zwróć uwagę, że „Telefon i? Treść” oraz „Telefon i; treść” powinny automatycznie wypełniać zarówno pole do:, jak i tekst podstawowy. Wyświetl źródło, aby uzyskać więcej informacji informacje)
AKTUALIZACJA:
Wygląda na to, że iOS8 musiał coś zmienić, więc dzięki niektórym innym komentatorom / respondentom pojawił się nowy styl dla iOS:
<a href="sms:/* phone number here */&body=/* body text here */">Link</a>
(numer telefonu jest opcjonalny)
źródło
sms
identyfikator URI można zmienić na Androidzie i robi to wielu producentów; dlatego chociaż może działać na określonym urządzeniu / aplikacji, może nie działać na innym (lub po prostu po aktualizacji). Sugeruję, aby nigdy nie używać tego na Androidzie, chyba że ustawiasz tylko numer telefonu; używaj go tylko w testowanych wersjach iOS i platformach innych niż Android.Wiem, że to stara nić, ale natknąłem się na nią i stwierdziłem, że niektóre części są już nieaktualne.
Odkryłem, że jeśli chcesz po prostu wypełnić tekst bez dodawania numeru telefonu, możesz wykonać następujące czynności:
źródło
?
pomysł, jak sprawić, by była pusta? Próbowałemsms:?body
isms:;?body
pierwsza próba wysłania? a drugi próbuje wysłać do;W przypadku iOS 8 spróbuj tego:
Przełączanie „;” z „&” zadziałało dla mnie.
źródło
Po prostu umieść wszystkie symbole w tej kolejności (testowałem to tylko w tej kolejności, ponieważ jest to dla mnie najbardziej sensowne z punktu widzenia kodu).
Wskazówki dla łącza ciała ... Po prostu umieścić ...
;?&body=
. Zwróć również uwagę, że stwierdziłem, że muszę użyć%20
dla dowolnych przestrzeni.Przetestowałem to na moim iPhonie (v. 9.2) i innym Androidzie i działa dobrze.
To rozwiąże problem z włamaniem do różnych urządzeń. Nie mam żadnych artefaktów, kiedy testowałem to w SMS-ie.
źródło
Nie ma potrzeby stosowania dwóch oddzielnych tagów kotwicy dla systemów Android i iOS. To powinno pomóc.
// Bez numeru kontaktowego
<a href="sms:?&body=message">Text Message</a>
// Z numerem kontaktowym
<a href="sms:1234567890;?&body=message">Text Message</a>
// Działa na Androidzie i iOS
źródło
Without Contact Number
wersję na MacOS - SMS jest ustawionyto
na?
Znaleźliśmy proponowaną metodę i przetestowaliśmy:
Oto wyniki:
<12345678? Body = Hellomyfriend>” (po kliknięciu linku „Wyślij sms”)).
Dlatego dochodzę do wniosku, że to nie działa - przynajmniej z tą metodą.
źródło
Tylko korpus Androida i iOS :
Tylko jeden odbiorca na Androida i iOS z treścią:
Tylko wielu adresatów na Androida z treścią:
Tylko wielu adresatów na iOS z treścią:
Zauważ, że treść powinna być zakodowana w URI.
źródło
Aby otrzymać linki sms: i mailto: do pracy na iPhonie i Androidzie, bez javascript, spróbuj tego:
Przetestowałem go w Chrome na Androida i iPhone'a oraz Safari na iPhonie.
Wszyscy działali zgodnie z oczekiwaniami. Pracowali również bez numeru telefonu i adresu e-mail.
źródło
Rozwiązanie Bradorego sprawdziło się dla mnie, ale tutaj jest bardziej rozszerzona odpowiedź.
Niewielką kwestią jest to, że musisz zakodować treść przy użyciu
%20
zamiast+
. W przypadku PHP oznacza to używanierawurlencode($body)
zamiasturlencode($body)
. W przeciwnym razie w wiadomościach w starszych wersjach systemu iOS zamiast spacji zobaczysz znaki plus.Oto funkcja jQuery, która dostosuje linki SMS do urządzeń z systemem iOS. Android / inne urządzenia powinny działać normalnie i nie będą wykonywać kodu.
HTML:
jQuery:
Jeśli to możliwe, rozważ użycie klasy takiej jak
a.sms-link
zamiasta[href^="sms:"]
.źródło
źródło
IPhone nie przyjmuje żadnego tekstu wiadomości, przyjmie tylko numer telefonu. Możesz to zobaczyć tutaj https://developer.apple.com/library/ios/featuredarticles/iPhoneURLScheme_Reference/SMSLinks/SMSLinks.html#//apple_ref/doc/uid/TP40007899-CH7-SW1
źródło
Do korzystania z Androida użyj poniższego kodu
W przypadku iOS możesz użyć poniższego kodu
poniższy kod działający zarówno dla iOs, jak i Android
źródło
Działa to na moim iPhonie 5S!
źródło
Podejrzewam, że w większości aplikacji nie wiesz, do kogo napisać, więc chcesz wypełnić tylko treść tekstu, a nie numer. Działa to zgodnie z oczekiwaniami, po prostu pomijając liczbę - oto jak wyglądają adresy URL w tym przypadku:
W przypadku iOS to samo, z wyjątkiem;
Oto przykład kodu, którego używam do skonfigurowania SMS-a:
źródło
Cóż, nie tylko musisz martwić się o iOS i Androida, ale jest też aplikacja do przesyłania wiadomości na Androida. Aplikacja do obsługi wiadomości Google dla Note 9 i niektóre nowe galaktyki nie otwierają się z tekstem, ale aplikacja Samsung działa. Rozwiązanie wydaje się być dodane // po sms:
więc sms: // 15551235555
Powinien być
źródło
(Tylko trochę tematu), ale może gdybyś szukał, mógłbyś się tutaj natknąć ... W przecenie (testowane z parsedown i na iOS / Android) możesz zrobić:
źródło
Dowiedziałem się, że na iPhonie 4 z IOS 7 MOŻESZ umieścić treść do SMS-a tylko wtedy, gdy ustawisz numer telefonu na liście kontaktów telefonu.
Więc poniższe będzie działać, jeśli 0606060606 jest częścią moich kontaktów:
Nawiasem mówiąc, na iOS 6 (iPhone 3GS) działa tylko z ciałem:
źródło
Każda wersja systemu operacyjnego ma inny sposób. Zapoznaj się z biblioteką sms-link
źródło
Jednym z problemów z łączem typu „kliknij, aby przejść do tekstu” jest rozwiązanie scenariusza komputerowego, w którym nie istnieje natywna aplikacja do obsługi SMS-ów. Rozwiązaniem jest użycie kreatora przycisków Click-to-Text firmy Zipwhip.
https://www.zipwhip.com/create-sms-button/
źródło
Ani Android, ani iPhone nie obsługują obecnie elementu Body copy w hiperłączu Dotknij, aby wysłać SMS-a. Można to jednak zrobić programowo,
źródło