Difference between revisions of "NSURL"

From iPhone Development Wiki
Jump to: navigation, search
m (Pre-registered URL scheme)
Line 96: Line 96:
| video-player-event || ? || {{applink|MobileMusicPlayer}} || {{no}} || ?
| video-player-event || ? || {{applink|MobileMusicPlayer}} || {{no}} || ?
| photos-event || ? || {{applink|MobileSlideShow}} || {{unk}} ||

Revision as of 11:51, 13 February 2010

NSURL is a class that holds an URL.

Pre-registered URL scheme

There are a bunch of URL schemes reserved within iPhoneOS. You cannot register these schemes in your app.

Scheme Form Handler Public Usage
ftp - MobileSafari Yes File transfer protocol.
http - MobileSafari Yes Hypertext transfer protocol.
https - MobileSafari Yes HTTP Secure.
feed [1] MobileSafari Yes Web Feed.
feeds - MobileSafari Yes Web Feed?
calshow calshow:x?eventid=id MobileCal No Used in -[SBCalendarAlertItem revealEvent].
calinvite calinvite:eventid=id MobileCal No Used in -[SBInvitationAlertItem revealEvent].
calinvitelist ? MobileCal No ?
mailto [2] MobileMail Yes Sending emails.
sms sms:phoneNumber MobileSMS Yes Sending SMS.
tel tel:phoneNumber MobilePhone Yes Telephone.
telprompt telprompt:phoneNumber MobilePhone Yes Telephone with prompt. Available only in 3.0 –.
callto ? MobilePhone No ?
telshow telshow:// MobilePhone No ?
tellock tellock:// MobilePhone No ?
telanswer telanswer:something/ MobilePhone No Used in -[SBCallAlertDisplay answer:].
telemergency telemergency:// MobilePhone No ?
vmshow vmshow:integer MobilePhone No Voicemail. Used in -[SBVoiceMailAlertItem performUnlockAction].
maps maps:params Maps Yes Maps. URLs of this type can be interpreted as http://maps.google.com/maps?params.
prefs prefs:params Preferences No Preferences. params can be like root=General&path=About.
youtube youtube:videoID YouTube Yes YouTube video. URLs of this type can be interpreted as http://www.youtube.com/v/videoID.
itms - MobileStore Yes iTunes Music Store.
itmss - MobileStore Yes ?
itms-apps - AppStore Yes ?
itms-appss - AppStore Yes ?
webcal [3] SpringBoard Yes WebCal subscription.
doubletap doubletap://displayID SpringBoard No The application will be launched when user double tapped the home button.
search search://displayID/domain/identifier SpringBoard No ?
rdar rdar:url MobileSafari Yes Radars (bug reporter). URLs of this type can be interpreted as https://bugreport.apple.com/cgi-bin/WebObjects/RadarWeb.woa/wa/openURL?url=url.
radar radar:url MobileSafari Yes Radars (bug reporter). Equivalent to rdar:.
javascript - MobileSafari No Execute Javascript. Can only be used in MobileSafari.
ff ff:param or maps:param FriendFinderApp Unknown Friend finder URL. Not usable yet.
springboard springboard:/command SpringBoard No SpringBoard command. Seems abandoned. Only referred in -[UIApplication _runSpringboardCommand:].
webclip ? MobileSafari No ?
audio-player-event ? MobileMusicPlayer No ?
video-player-event ? MobileMusicPlayer No ?
photos-event ? MobileSlideShow Unknown

In addition, common Jailbroken devices also have cydia and apptapp scheme reserved for Cydia.

Friend Finder URLs

Friend finder URLs are handled by the unknown application "com.apple.FriendFinderApp". It may be similar in function to Google Latitude[1].

There are 4 kinds of friend finder URLs:

  • "ff/acc" URLs: These are of the form ff:t=token. These URLs will be transformed to https://iphone-services.apple.com/ff/acc?t=token&bid=0. There are also maps:t=token which the only difference is bid=1.
  • "ff/su" URLs: These are of the form ff:em=email. These URLs will be transformed to https://iphone-services.apple.com/ff/su?em=email.
  • Friend-to-friend URLs: These are of the form maps:ffsourceuserid=sourceFriend&ffdestuserid=destFriend.
  • Friend URLs: These are of the form maps:ffuserid=friend.

Launching Private URL schemes

Private URLs must be launched within SpringBoard. The -[SBAlertDisplay launchURL:] method is a convenient way to launch these URLs, e.g.

cy# SBAlertDisplay.messages["launchURL:"]([NSURL URLWithString:"prefs:root=WIFI&path=JoinEnterprise"])


  1. iPhone URL Schemes – Including Google Latitude: http://www.dc-studios.net/blog/?p=148