In general, on mobile, you should use device capabilities or existing instead of rebuilding features.

I am continuing to expand my thoughts on this, but see this presentation on Slideshare for a good summary of it for now.

Methodology

These were all tested in the second quarter of 2012. See below the table for full details of the devices and browsers tested. A test page was created with various types and formats of links. Many additional links were tested, which had very low success rates. This is a summary of the most useful variations.

Browser identity was mostly confirmed with whatismybrowser.com. In some cases, additional UA string sniffing was used.

Yes: Works as expected. Sorta: Works with notable caveats. Generally not usable, but maybe it's all you need. See footnotes. No: Does not work, but not catastrophic. NO: Errors or other unusually poor results. ?: Could not be tested. For example, a tablet without voice.

Results

OS

Browser

Phone

SMS

Location

Directions

Email

iOS 5

Mobile Safari

Yes

Sorta

Yes maps:

Yes maps:

Yes

Android 3.2

Browser

Yes

Sorta

Yes geo:

?

Yes

Android 3.2

Opera Mobile

Yes

Sorta

Yes geo:

?

Yes

Android 3.2

Skyfire

Yes

Sorta

Yes geo:

?

Yes

Android 4.0

Browser

Yes

?

Yes geo:

No

Yes

BlackBerry 5

Browser

Yes

?

Yes Browser

No

Yes

Featurephone

Obigo

Yes

Yes (1)

Yes Browser

No

Yes

Featurephone

UC Web (J2ME)

Yes

Yes (2)

Yes Browser

No

No

Featurephone

Access 3, VZW:

Yes

NO

Yes Browser

?

No

To Add: Windows Phone Symbian Belle Bada Anyone got a dumbphone virtual tool for free?

1) SMSTO actually supports sending the body link as well. 2) Also supported the body, but I have yet to determine a format that doesn't munge the recipient number as well.

Phone

Launches the Dialer, or allows access to the Contact List/Address book, sometimes tangentially (e.g. through the dialer). Usually does not dial immediately, but asks the user to confirm. But, no guarantees; some just dial right away.

Though mobile browsers tend to try to detect phone numbers and make them links automatically, by no means is this accurate or reliable. In an ad hoc survey, around a quarter of non-linked phones are not detected, or are detected wrong (the phone tries to dial an 8 digit number, etc.). Always use this link format. This also allows any text to be uses as the label, such as a shorthand mnemonic version (e.g. 1-800-Flowers).

If there is any chance at all that international users will encounter the number, include the country code. Remember, it doesn't have to be visible, and can just be in the link.

SMS

Location

Directions

Email

Devices & Browsers

iOS 5.1 Mobile Safari (iPod Touch)

Samsung Alias 2 Access NF3.0.22.2.17 Rev 1441 BUT identified as Firefox 2 on Linux, 1280x1024, by Verizon Wireless intermediary. This causes no end of trouble trying to get it to act like an Access browser, so it's only of so much value.