¿Cómo usar un enlace html para abrir la aplicación sms con un cuerpo precargado?
Todo lo que he leído parece indicar que sms: 18005555555? Body = bodyTextHere
Debería funcionar, pero en el iPhone, esto no funciona. Si saco el? Body = bodyTextHere, y solo uso sms: phonenumber, funciona.
He visto varios casos en los que los códigos QR hacen esto a través de un enlace de safari. ¿Cómo pueden rellenar previamente el cuerpo del texto?
Respuestas:
Resulta que esto es 100% posible, aunque un poco hacky.
Si desea que funcione en Android, debe usar este formato:
<a href="sms:/* phone number here */?body=/* body text here */">Link</a>
Si quieres que funcione en iOS, necesitas esto:
<a href="sms:/* phone number here */;body=/* body text here */">Link</a>
Demostración en vivo aquí: http://bradorego.com/test/sms.html (tenga en cuenta que "Teléfono y? Cuerpo" y "Teléfono y; cuerpo" deben autocompletar tanto el campo to: como el texto del cuerpo. Vea la fuente para obtener más información info)
ACTUALIZAR:
Aparentemente, iOS8 tuvo que cambiarnos las cosas, así que gracias a algunos de los otros comentaristas / respondedores, hay un nuevo estilo para iOS:
<a href="sms:/* phone number here */&body=/* body text here */">Link</a>
(el número de teléfono es opcional)
fuente
sms
URI se puede cambiar en Android y muchos fabricantes hacen esto; por lo tanto, si bien puede funcionar en un dispositivo / aplicación específico, es posible que no funcione en otro (o simplemente después de una actualización). Mi sugerencia es que nunca use esto en Android a menos que solo esté configurando el número de teléfono; Úselo solo en versiones de iOS y plataformas que no sean de Android que haya probado.Sé que este es un hilo antiguo, pero me topé con él y descubrí que algunas partes ya no son relevantes.
Descubrí que si solo desea completar el texto sin agregar un número de teléfono, puede hacer lo siguiente:
fuente
?
alguna idea de cómo hacer que aparezca en blanco? Lo intentésms:?body
ysms:;?body
, ¿el primero intenta enviar a? y el segundo intenta enviar a;Para iOS 8, intente esto:
Cambiar el ";" con un "&" funcionó para mí.
fuente
Simplemente coloque todos los símbolos en este orden (solo lo probé en este orden, ya que tiene más sentido en cuanto al código para mí).
Aviso para el enlace cuerpo ... sólo hay que poner ...
;?&body=
. Además, tenga en cuenta que he descubierto que necesitaba usarlo%20
para cualquier espacio.Lo probé en mi iPhone (v. 9.2) y en otro Android y funciona bien.
Esto resolverá el problema de tener que piratearlo para diferentes dispositivos. No tengo artefactos cuando lo probé en el SMS.
fuente
No se necesitan dos etiquetas de anclaje independientes para Android e iOS. Esto debería ayudar.
// Sin número de contacto
<a href="sms:?&body=message">Text Message</a>
// Con número de contacto
<a href="sms:1234567890;?&body=message">Text Message</a>
// Funciona tanto en Android como en iOS
fuente
Without Contact Number
versión en MacOS: establece el SMSto
en?
Encontramos un método propuesto y lo probamos:
Aquí están los resultados:
<12345678? Body = Hellomyfriend>" (después de hacer clic en el enlace "Enviar sms")).
Por lo tanto, concluyo que realmente no funciona, al menos con este método.
fuente
Solo cuerpo de Android e iOS :
Android e iOS un solo destinatario con cuerpo:
Solo varios destinatarios de Android con cuerpo:
Solo destinatarios múltiples de iOS con cuerpo:
Tenga en cuenta que el cuerpo debe estar codificado en URI.
fuente
Para obtener enlaces sms: y mailto: para que funcionen tanto en iPhone como en Android, sin ningún javascript, intente esto:
Lo probé en Chrome para Android y iPhone, y Safari en iPhone.
Todos funcionaron como se esperaba. También trabajaron sin el número de teléfono o la dirección de correo electrónico.
fuente
La solución de Bradorego es lo que funcionó para mí, pero aquí hay una respuesta más amplia.
Una pequeña consideración es que necesita codificar el cuerpo usando en
%20
lugar de+
. Para PHP, esto significa usar enrawurlencode($body)
lugar deurlencode($body)
. De lo contrario, verá signos más en el mensaje en versiones anteriores de iOS, en lugar de espacios.Aquí hay una función jQuery que reajustará sus enlaces SMS para dispositivos iOS. Android / otros dispositivos deberían funcionar normalmente y no ejecutarán el código.
HTML:
jQuery:
Considere usar una clase como en
a.sms-link
lugar dea[href^="sms:"]
si es posible.fuente
fuente
El iPhone no acepta ningún mensaje de texto, solo aceptará el número de teléfono. Puede ver esto aquí https://developer.apple.com/library/ios/featuredarticles/iPhoneURLScheme_Reference/SMSLinks/SMSLinks.html#//apple_ref/doc/uid/TP40007899-CH7-SW1
fuente
Para usar Android, usa el siguiente código
Para iOS puede usar el siguiente código
el siguiente código funciona tanto para iOS como para Android
fuente
¡Esto funciona en mi iPhone 5S!
fuente
Sospecho que en la mayoría de las aplicaciones no sabrá a quién enviar un mensaje de texto, por lo que solo desea completar el cuerpo del texto, no el número. Eso funciona como era de esperar al omitir el número; así es como se ven las URL en ese caso:
Para iOS lo mismo excepto con;
Aquí hay un ejemplo del código que utilizo para configurar el SMS:
fuente
Bueno, no solo tienes que preocuparte por iOS y Android, también está la aplicación de mensajería de Android. La aplicación de mensajería de Google para Note 9 y algunas galaxys nuevas no se abren con texto, pero la aplicación de Samsung funciona. La solución parece ser agregar // después del sms:
entonces sms: // 15551235555
debiera ser
fuente
(Solo un poco de tema), pero tal vez si buscaras, podrías tropezar aquí ... En markdown (probado con parsedown y en iOS / Android) podrías hacer:
fuente
Descubrí que, en iPhone 4 con IOS 7 , PUEDES poner un cuerpo al SMS solo si configuras un número de teléfono en la lista de contactos del teléfono.
Entonces, lo siguiente funcionará si 0606060606 es parte de mis contactos:
Por cierto, en iOS 6 (iPhone 3GS), funciona solo con un cuerpo:
fuente
Cada versión del sistema operativo tiene una forma diferente de hacerlo. Eche un vistazo a la biblioteca de enlaces sms
fuente
Uno de los problemas con un enlace de clic a texto es resolver el escenario de escritorio donde no existe una aplicación nativa de mensajes de texto. Una solución es utilizar el creador de botones Click-to-Text de Zipwhip.
https://www.zipwhip.com/create-sms-button/
fuente
Actualmente, ni Android ni iPhone admiten el elemento de copia del cuerpo en un hipervínculo Tap to SMS. Sin embargo, se puede hacer mediante programación,
fuente