最近集成了openinstall的sdk尊惰,其中有配置通用鏈接一項碳却,不太了解,自己查了查資料翅娶,記錄下自己的理解
Q:支持通用鏈接(Universal Links)能達到什么樣的效果文留?
A:支持后,用戶點擊網頁鏈接,可以直接跳轉到APP! 沒有安裝的時候,打開指定頁面(如商品詳情頁、APP下載頁等).
Q:和Custom URL scheme有什么區(qū)別竭沫?
A:
唯一性: 使用標準的http/https鏈接到你的web站點,所以它不會被其它的app所聲明.另外,Custom URL scheme 在沒有安裝 app 的情況下是無法直接打開的燥翅,而 universal links 本身是一個 HTTP/HTTPS 鏈接,所以有更好的兼容性
安全:當用戶安裝了你的app,那么iOS將去你的網站上去下載你上傳上去的說明文件(這個說明文件聲明了你的app可以打開哪些類型的http鏈接).因為只有你自己才能上傳文件到你網站的根目錄,所以你的網站和你的app之間的關聯(lián)是安全的.
可變:當用戶手機上沒有安裝你的app的時候,Universal Links也能夠工作.如果你愿意,在沒有安裝你的app的時候,用戶點擊鏈接,會在safari中展示你網站的內容.
簡單:一個URL鏈接,可以同時作用于網站和app
私有:其它app可以在不需要知道你的app是否安裝了的情況下和你的app相互通信.
以上為官方文檔的大致翻譯蜕提,個人理解如下:
URL scheme設計是為了APP之間的跳轉和通信森书,所以是基于APP已安裝的情況; universal links提供未安裝時也可以瀏覽對應網頁谎势,體驗也更好拄氯,當然也不需要去手寫代碼判斷是否安裝;采用標準的http/https協(xié)議它浅,不會被其他APP屏蔽掉(比如微信內置瀏覽器);另外universal?link?在iOS9.0才開始支持镣煮,scheme好像是3.0就支持姐霍。
再看看使用和配置方面的不同:
Custom URL scheme:項目中配置scheme和identifier(反轉域名保持唯一性),使用時canOpenURL判斷是否系統(tǒng)已注冊scheme典唇,即判斷是否安裝镊折,使用openURL打開APP。
universal link:網站得支持HTTPS介衔,web server根目錄上傳關聯(lián)文件(APP和路徑的關聯(lián)恨胚,訪問哪些路徑打開哪個APP)。