iOS 應用內調用外部瀏覽器

有時候由於應用的限制,我們需要在應用內調用外部瀏覽器去打開一個網頁鏈接。比如調用QQ瀏覽器。
此時可以在iTunes Stroe中下載QQ瀏覽器的ipa安裝包,然後在我的應用程序中右擊選擇”在Finder中顯示”。之後解壓縮安裝包。在打開的文件夾中選擇Payload。選擇mttlite右擊”顯示包內容”。

找到Info.plist文件並打開,找到URL TYPE並展開
這裏寫圖片描述
可以看到URL Schemes爲mttbrowser
同樣的可以知道UC瀏覽的URL Schemes爲ucbrowser

所以在代碼中我們可以這樣寫。有時可能因爲瀏覽器的差異會有不同

//QQ瀏覽器
NSString *toQQStr = [NSString stringWithFormat:@"mttbrowser://url=%@",url];
NSURL *toQQURL = [NSURL URLWithString:toQQStr];
[[UIApplication sharedApplication] openURL:toQQURL];

//UC瀏覽器
NSString *toUCStr = [NSString stringWithFormat:@"ucbrowser://%@",url];
NSURL *toUCURL = [NSURL URLWithString:toUCStr];
[[UIApplication sharedApplication] openURL:toUCURL];

但有時因爲我們的手機中並未安裝相關的應用,即調用
UIApplication中openURL方法返回false
則需要提示用戶下載並自動進入到App Store 中的應用下載頁。

那麼問題來了,如何從應用內進入到App Store指定應用的下載頁呢

我們可以在App Store中搜索應用點擊分享按鈕 選擇短信分享。即可獲取到該應用下載頁的地址。如QQ瀏覽器在App Sore中的下載地址就是https://appsto.re/cn/Mc-dw.i
之後可以通過代碼

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://appsto.re/cn/Mc-dw.i"]];

去打開應用在App Store中的下載頁。

發佈了33 篇原創文章 · 獲贊 0 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章