Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/extensions/Variables/includes/ExtVariables.php on line 198
NSURL - iPhone Development Wiki

NSURL

From iPhone Development Wiki
Revision as of 16:42, 5 November 2009 by KennyTM~ (talk | contribs)

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 Unknown ?
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 Unknown ?
telshow telshow:// MobilePhone Unknown ?
tellock tellock:// MobilePhone Unknown ?
telanswer telanswer:something/ MobilePhone No Used in -[SBCallAlertDisplay answer:].
telemergency telemergency:// MobilePhone Unknown ?
vmshow vmshow:integer MobilePhone Unknown 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:].

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.

References

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