dakine
dakine

Reputation: 610

SMS URL on Android

I was wanting to know if Android had a similar feature to the iPhone in that you can use an HTML A tag to send an SMS by setting the HREF attribute to the phone number you want to send the message to and prefixing it with "SMS:", i.e. href="SMS:02313213"

I've had a look around and can't seem to find anything that suggests it is available on Android.

Upvotes: 34

Views: 69243

Answers (9)

Edward
Edward

Reputation: 1508

For US toll free numbers I found that removing the country code (+1) made texts work. I don't have an iPhone, but I'm on a Mac and the OSX messages app had no trouble with the number sans country code:

<a href="sms:8005555555">contact</a>

Upvotes: 0

gto406
gto406

Reputation: 629

I found the following which may help you:

https://www.rfc-editor.org/rfc/rfc5724

You can check sub-section 2.5 or 2.6 of this RFC to give you some additional pointers on formulating a proper SMS URL.

Eg. using formal URI-spec as detailed in sub-section 2.2 of rfc5724:

<a href="sms:+19725551212?body=hello%20there">SMS Me</a>  

Notice the 'escaped' character for the 'space' in the example above.

Hopefully the Android browser will permit you to generate XHTML forms based on this syntax. I believe they will (if I have some time over the next day, I shall give it a try on my Galaxy S).

Upvotes: 37

arcin91
arcin91

Reputation: 21

If you need a URL working for both Android and iOS you can do this trick:

sms:+123456789?&body=hello%20there

Upvotes: 2

Leo
Leo

Reputation: 2326

You could use a CSS trick to display one or the other: CSS media query to target only iOS devices

@supports (-webkit-touch-callout:none) {
  /* CSS specific to iOS devices */ 
  .android { display:none }
  }

@supports not (-webkit-touch-callout:none) {
  /* CSS for other than iOS devices */
  .ios { display:none }
  }

<a class="ios" href="sms://+12345">SMS me</a>
<a class="android" href="sms:+12345">SMS me</a>

Upvotes: 1

Harsh Sanghani
Harsh Sanghani

Reputation: 1722

If you wants to allow in Android and IOS, Following trick worked for me in both devices.

Without adding number :

sms:?&body<Your message goes here>

Upvotes: 2

Bob&#237;k
Bob&#237;k

Reputation: 1937

If multiple recipients needed, this works:

Android:

sms:+15558675309,+15558675301?body=Text%20Here%20end!

iOS, macOS:

sms://open?addresses=+15558675309,+15558675301/&body=Text%20Here%20end!

Upvotes: 7

Andrew
Andrew

Reputation: 21

I have noticed if you use a qrc code with text for mms:<phone_number>?body=<your message here.> this seem to work and avoid the error: invalid recipient(s)

here is a test qrc http://qrcode.kaywa.com/img.php?s=8&d=mms%3A555-555-5555%3Fbody%3DYour%20Message

Upvotes: 2

Ian G
Ian G

Reputation: 5536

href="sms:+xxx" works on my stock HTC Desire Android 2.2 browser and the Sense SMS app, but sms:+xxx?body= doesn't - error: invalid recipient(s). I was only really interested in setting the body - anyone seen / solved this problem?

My test page is here: http://jsbin.com/itama4/15

Upvotes: 5

Josef Pfleger
Josef Pfleger

Reputation: 74557

That should work:

<a href="sms:+437722735932">contact</a>

Upvotes: 4

Related Questions