URL Scheme的作用

URL Scheme的作用

我們都知道蘋果手機中的APP都有一個沙盒愧沟,APP就是一個信息孤島喳挑,相互是不可以進行通信的且改。但是iOS的APP可以注冊自己的URL Scheme,URL Scheme是為方便app之間互相調用而設計的怜跑。我們可以通過系統的OpenURL來打開該app,并可以傳遞一些參數吠勘。

例如:你在Safari里輸入www.alipay.com性芬,就可以直接打開你的支付寶app,前提是你的手機裝了支付寶看幼。如果你沒有裝支付寶批旺,應該顯示的是支付寶下載界面,點擊會跳到AppStore的支付寶下載界面诵姜。

URL Scheme必須能唯一標識一個APP汽煮,如果你設置的URL Scheme與別的APP的URL Scheme沖突時,你的APP不一定會被啟動起來棚唆。因為當你的APP在安裝的時候暇赤,系統里面已經注冊了你的URL Scheme。

一般情況下宵凌,是會調用先安裝的app鞋囊。但是ios的系統app的URL Scheme肯定是最高的。所以我們定義URL Scheme的時候瞎惫,盡量避開系統app已經定義過的URL Scheme溜腐。

注冊URL Scheme

1.在info.plist里添加URL types

每一個項目里面都會有一個info.plist配置文件。找到info.plist瓜喇,右鍵選擇Add Row挺益,然后選擇URL types。如圖所示:

2.添加URL Schemes

添加完URL types乘寒,點擊展開望众。右鍵選擇Add Row,添加URL Schemes:

3.設置URL Schemes

設置URL Schemes為iOSDevTip

4.設置URL Identifier

URL Identifier是自定義的 URL scheme 的名字,一般采用反轉域名的方法保證該名字的唯一性烂翰,比如 com.iOSStrongDemo.www

添加成功啟動提示

為了方便測試夯缺,我們在AppDelegate里面添加一個UIAlertView,當app被成功打開時甘耿,會提出提示:

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL*)url

{

// 接受傳過來的參數

NSString *text = [[url host] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"打開啦"

message:text

delegate:nil

cancelButtonTitle:@"OK"

otherButtonTitles:nil];

[alertView show];

return YES;

}

Safari啟動自定義的URL Schemes APP

既然已經配置好URL Schemes踊兜,那么我們可以來款速測試一下,我們設置的URL Schemes是否有效棵里。打開Safari润文,在地址欄里輸入:iOSDevTip://

果然成功打開:

也可以在地址欄中輸入:iOSDevTip://com.iOSStrongDemo.www蜡峰。也是可以打開注冊了URL Schemes的APP的帚呼。

通過另一個APP啟動注冊了URL Schemes的APP

NSString *url = @"iOSDevTip://";

//? ? NSString *url = @"iOSDevTip://com.iOSStrongDemo.www";

if ([[UIApplication sharedApplication]

canOpenURL:[NSURL URLWithString:url]])

{

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:url]];

}

else

{

NSLog(@"can not open URL scheme iOSDevTip");

}

打開注冊iOSDevTip的APP格式為: URL Scheme://URL identifier眯分,直接調用URL Scheme也可打開程序, URL identifier是可選的岗宣。

?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末清笨,一起剝皮案震驚了整個濱河市脆诉,隨后出現的幾起案子雾棺,更是在濱河造成了極大的恐慌卸夕,老刑警劉巖柱告,帶你破解...
    沈念sama閱讀 216,496評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件截驮,死亡現場離奇詭異,居然都是意外死亡际度,警方通過查閱死者的電腦和手機葵袭,發(fā)現死者居然都...
    沈念sama閱讀 92,407評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來乖菱,“玉大人坡锡,你說我怎么就攤上這事≈纤” “怎么了鹉勒?”我有些...
    開封第一講書人閱讀 162,632評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長吵取。 經常有香客問我禽额,道長,這世上最難降的妖魔是什么皮官? 我笑而不...
    開封第一講書人閱讀 58,180評論 1 292
  • 正文 為了忘掉前任脯倒,我火速辦了婚禮,結果婚禮上捺氢,老公的妹妹穿的比我還像新娘盔憨。我一直安慰自己,他們只是感情好讯沈,可當我...
    茶點故事閱讀 67,198評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般缺狠。 火紅的嫁衣襯著肌膚如雪问慎。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,165評論 1 299
  • 那天挤茄,我揣著相機與錄音如叼,去河邊找鬼。 笑死穷劈,一個胖子當著我的面吹牛笼恰,可吹牛的內容都是我干的。 我是一名探鬼主播歇终,決...
    沈念sama閱讀 40,052評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼社证,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了评凝?” 一聲冷哼從身側響起追葡,我...
    開封第一講書人閱讀 38,910評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎奕短,沒想到半個月后宜肉,有當地人在樹林里發(fā)現了一具尸體,經...
    沈念sama閱讀 45,324評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡翎碑,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,542評論 2 332
  • 正文 我和宋清朗相戀三年谬返,在試婚紗的時候發(fā)現自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片日杈。...
    茶點故事閱讀 39,711評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡遣铝,死狀恐怖,靈堂內的尸體忽然破棺而出达椰,到底是詐尸還是另有隱情翰蠢,我是刑警寧澤,帶...
    沈念sama閱讀 35,424評論 5 343
  • 正文 年R本政府宣布啰劲,位于F島的核電站梁沧,受9級特大地震影響,放射性物質發(fā)生泄漏蝇裤。R本人自食惡果不足惜廷支,卻給世界環(huán)境...
    茶點故事閱讀 41,017評論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望栓辜。 院中可真熱鬧恋拍,春花似錦、人聲如沸藕甩。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,668評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至僵娃,卻和暖如春概作,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背默怨。 一陣腳步聲響...
    開封第一講書人閱讀 32,823評論 1 269
  • 我被黑心中介騙來泰國打工讯榕, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人匙睹。 一個月前我還...
    沈念sama閱讀 47,722評論 2 368
  • 正文 我出身青樓愚屁,卻偏偏與公主長得像,于是被迫代替她去往敵國和親痕檬。 傳聞我的和親對象是個殘疾皇子霎槐,可洞房花燭夜當晚...
    茶點故事閱讀 44,611評論 2 353

推薦閱讀更多精彩內容