Comment utiliser un lien html pour ouvrir l'application SMS avec un corps pré-rempli?
Tout ce que j'ai lu semble indiquer que sms: 18005555555? Body = bodyTextHere
Cela devrait fonctionner, mais sur l'iPhone, cela ne fonctionne pas. Si je retire le? Body = bodyTextHere, et que j'utilise simplement sms: phonenumber, cela fonctionne.
J'ai vu plusieurs cas où les codes QR le font via un lien safari. Comment peuvent-ils pré-remplir le corps du texte?
Réponses:
Il s'avère que c'est possible à 100%, bien qu'un peu piraté.
Si vous voulez que cela fonctionne sur Android, vous devez utiliser ce format:
<a href="sms:/* phone number here */?body=/* body text here */">Link</a>
Si vous voulez que cela fonctionne sur iOS, vous en avez besoin:
<a href="sms:/* phone number here */;body=/* body text here */">Link</a>
Démo en direct ici: http://bradorego.com/test/sms.html (notez que "Téléphone et? Corps" et "Téléphone et; corps" doivent remplir automatiquement le champ to: et le corps du texte. Pour en savoir plus, consultez la source Info)
METTRE À JOUR:
Apparemment, iOS8 a dû changer les choses sur nous, donc grâce à certains des autres commentateurs / répondeurs, il y a un nouveau style pour iOS:
<a href="sms:/* phone number here */&body=/* body text here */">Link</a>
(le numéro de téléphone est facultatif)
la source
sms
URI peut être modifié sur Android et de nombreux fabricants font; Par conséquent, bien qu'il puisse fonctionner sur un appareil / une application spécifique, il peut ne pas fonctionner sur un autre (ou simplement après une mise à jour). Ma suggestion est de ne jamais l'utiliser sur Android à moins que vous ne définissiez uniquement le numéro de téléphone; utilisez-le uniquement sur les versions iOS et les plates-formes non Android que vous avez testées.Je sais que c'est un vieux fil, mais je suis tombé dessus et j'ai constaté que certaines parties ne sont plus pertinentes.
J'ai constaté que si vous souhaitez simplement remplir le texte sans ajouter de numéro de téléphone, vous pouvez effectuer les opérations suivantes:
la source
?
une idée de comment le faire apparaître vide? J'ai essayésms:?body
etsms:;?body
, le premier essaie d'envoyer à? et le second essaie d'envoyer à;Pour iOS 8, essayez ceci:
Commutation du ";" avec un "&" a fonctionné pour moi.
la source
Mettez simplement tous les symboles dans cet ordre (je ne l'ai testé que dans cet ordre car cela me semble le plus logique du point de vue du code).
Avis pour le lien du corps ... je viens juste ...
;?&body=
. Notez également que j'ai trouvé que je devais utiliser%20
pour tous les espaces.Je l'ai testé sur mon iPhone (v. 9.2) et un autre Android et cela fonctionne très bien.
Cela résoudra le problème de devoir le pirater pour différents appareils. Je n'ai aucun artefact lorsque je l'ai testé dans le SMS.
la source
Il n'est pas nécessaire de disposer de deux balises d'ancrage distinctes pour Android et iOS. Cela devrait aider.
// Sans numéro de contact
<a href="sms:?&body=message">Text Message</a>
// Avec numéro de contact
<a href="sms:1234567890;?&body=message">Text Message</a>
// Fonctionne sur Android et iOS
la source
Without Contact Number
version sur MacOS - il définit le SMSto
sur?
Nous avons trouvé une méthode proposée et testé:
Voici les résultats:
<12345678? Body = Hellomyfriend>" (après avoir cliqué sur le lien "Envoyer sms")).
Je conclus donc que cela ne fonctionne pas vraiment - du moins avec cette méthode.
la source
Corps Android et iOS uniquement:
Android et iOS un seul destinataire avec corps:
Seulement plusieurs destinataires Android avec corps:
Seulement iOS plusieurs destinataires avec corps:
Notez que le corps doit être encodé en URI.
la source
Pour obtenir des liens sms: et mailto: qui fonctionnent à la fois sur iPhone et Android, sans JavaScript, essayez ceci:
Je l'ai testé sur Chrome pour Android et iPhone, et Safari sur iPhone.
Ils ont tous fonctionné comme prévu. Ils ont également travaillé sans numéro de téléphone ni adresse e-mail.
la source
La solution de Bradorego est ce qui a fonctionné pour moi, mais voici une réponse plus étendue.
Une petite considération est que vous devez encoder le corps en utilisant
%20
au lieu de+
. Pour PHP, cela signifie utiliserrawurlencode($body)
au lieu deurlencode($body)
. Sinon, vous verrez des signes plus dans le message sur les anciennes versions d'iOS, au lieu d'espaces.Voici une fonction jQuery qui réaménagera vos liens SMS pour les appareils iOS. Les appareils Android / autres devraient fonctionner normalement et n'exécuteront pas le code.
HTML:
jQuery:
Pensez à utiliser une classe comme
a.sms-link
au lieu dea[href^="sms:"]
si possible.la source
la source
L'iPhone n'accepte aucun texte de message, il ne prendra que le numéro de téléphone. Vous pouvez le voir ici https://developer.apple.com/library/ios/featuredarticles/iPhoneURLScheme_Reference/SMSLinks/SMSLinks.html#//apple_ref/doc/uid/TP40007899-CH7-SW1
la source
Pour utiliser Android, vous utilisez le code ci-dessous
Pour iOS, vous pouvez utiliser le code ci-dessous
code ci-dessous fonctionnant à la fois pour iOs et Android
la source
Cela fonctionne sur mon iPhone 5S!
la source
Je soupçonne que dans la plupart des applications, vous ne saurez pas à qui envoyer un SMS, vous ne voulez donc remplir que le corps du texte, pas le numéro. Cela fonctionne comme prévu en omettant simplement le numéro - voici à quoi ressemblent les URL dans ce cas:
Pour iOS même chose sauf avec le;
Voici un exemple du code que j'utilise pour configurer le SMS:
la source
Eh bien, non seulement vous devez vous soucier d'iOS et d'Android, mais il existe également une application de messagerie Android. L'application de messagerie Google pour la note 9 et certains nouveaux galaxys ne s'ouvrent pas avec du texte, mais l'application Samsung fonctionne. La solution semble être d'ajouter // après le sms:
donc sms: // 15551235555
devrait être
la source
(Juste un peu de sujet), mais peut-être que si vous cherchiez, vous pourriez tomber ici ... Dans Markdown (testé avec parsedown et sur iOS / Android), vous pourriez faire:
la source
J'ai découvert que, sur iPhone 4 avec IOS 7 , vous POUVEZ mettre un corps au SMS uniquement si vous définissez un numéro de téléphone dans la liste de contact du téléphone.
Donc, ce qui suit fonctionnera si 0606060606 fait partie de mes contacts:
Au fait, sur iOS 6 (iPhone 3GS), cela ne fonctionne qu'avec un corps:
la source
Chaque version du système d'exploitation a une manière différente de le faire. Jetez un œil à la bibliothèque sms-link
la source
L'un des problèmes avec un lien clic-texte est la résolution du scénario de bureau où aucune application de messagerie native n'existe. Une solution consiste à utiliser le créateur de bouton Click-to-Text de Zipwhip.
https://www.zipwhip.com/create-sms-button/
la source
Ni Android ni les iPhones ne prennent actuellement en charge l'élément de copie de corps dans un lien hypertexte Tap to SMS. Cela peut être fait par programme,
la source