導讀:如何讓App的每一個頁面/服務可以像Web Page那樣被發現、管理和監測?如何基於特定的情景讓移動端用戶可以在各個App之間進行無縫的喚醒切換?如何利用Growth Hacking的理念提升app的用戶和留存?如何評估App的某個具體頁面/服務的傳播效果?咱們將在持續分享以增加爲主題的系列乾貨文章中爲您一一解讀,本期魔窗萌妹子程序媛劉家飛教你如何在App中用Universal links跨越微信屏蔽,在微信中直接喚醒第三方App。html
Apple爲iOS 9發佈了一個所謂的通用連接的深層連接特性,即Universal links。雖然它並不完美,可是這一發布,讓數以千計的應用開發人員忽然意識到本身的應用體驗被打破。web
魔窗推出了mLink ,爲了打破App孤島格局,構建情景式的服務鏈,大幅提高用戶體驗,讓每一次的鏈接都產生價值。安全
什麼是Universal links?微信
Universal links,一種可以方便的經過傳統的HTTP/HTTPS 連接來啓動App,使用相同的網址打開網站和App。app
試想一下,經過惟一的網址,一個用戶點擊能夠連接到你網站的網址,當App已經被安裝的時候,直接無縫的重定向到App中而不是打開 Safari,當用戶沒有安裝App的時候,直接在Safari中打開連接,經過這個惟一的網址還能夠連接到您App中某個特定的視圖,而不是特別的URL Schemes。這種用戶體驗是否是至關的棒?ide
相較custom URL Schemes, Universal links的好處網站
(1)不一樣的App是能夠定義相同的custom URL Schemes的,因此會存在搶佔或者衝突的問題,而Universal links使用標準的HTTP/HTTPS,因此不存在上述問題。搜索引擎
(2)custom URL Schemes在沒有安裝App的狀況下是沒法直接打開的,而Universal links自己是一個HTTP/HTTPS 連接,因此在沒有安裝App的狀況下,能夠用Safari打開相應的webView 。spa
在微信中打開Universal link ,而且App未安裝的狀況下:3d
在微信中打開custom URL Schemes,而且 App 未安裝的狀況下:
(3)在 App 已安裝的狀況下,在微信中點擊跳轉連接,custom URL Schemes是沒法直接打開App的,由於微信屏蔽了custom URL Schemes的跳轉,而Universal links因爲其自己是HTTP/HTTPS 連接的優點,能夠跳出微信的屏蔽,直接從微信中跳轉並打開相應的App。
在微信中打開Universal link ,而且App已安裝的狀況下:
在微信中打開customURL Schemes,而且App已安裝的狀況下:
(4)Universal links可使用相同的網址打開網站和 App。
(5)Universal links支持從其餘App的MKWebView或UIWebView中跳轉到目標 App。
(6)Universal links自己能夠被搜索引擎索引。
Universal links的具體實現
實現Universal links不難,可是也有一些門檻:
有一個註冊的域名
經過 SSL 訪問域名
支持上傳一個JSON文件到你的域名
至少iOS 9+
至少Xcode 7 beta 2
(1)添加一個apple-app-site-association文件到你的網站來描述 URL 和 App 的關聯。
該文件必須存在且爲了安全緣由須要使用SSL 經過 GET 請求訪問到。
在你的apple-app-site-association文件中,是須要寫一個簡單的JSON格式,好比:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
{
"applinks"
: {
"apps"
: [],
"details"
: [
{
"appID"
:
"9JA89QQLNQ.com.apple.wwdc"
,
"paths"
: [ 「/wwdc/news/
",「/videos/wwdc/2015/*"
]
},
{
"appID"
:
"TeamID.BundleID2"
,
"paths"
: [ 「*" ]
}
]
}
}
|
(2)添加Associated Domains來指定要從哪些域名查詢Universal link support。在Xcode的capabilities 裏添加你的App域名,必須用applinks前置它。
(3)在App delegate的application:continueUserActivity:restorationHandler: 方法中handleuniversal links
魔窗mLink對Universal links的支持
魔窗除了對custom URL Schemes以外,同時也對Universal links進行了支持。
若是App已經配置了Universal links ,只須要在魔窗後臺添加相應的Universal links便可;
若是App沒有配置Universal links ,那麼只須要提供Team ID 和Bundle ID,魔窗爲App提供Universal links服務。
原博客地址:http://www.devstore.cn/essay/essayInfo/5996.html