Android App Links
我們可以把app中的content透過連結,讓使用者直接開啟app到那個特定的content,有以下兩種連結方方法可以做到:
Deep Links: 這是使用URL的方法,我們必須在app中加入intent filters,然後解析intent帶來的data來開啟相對應的activity。潛在問題是其他的app如果也listen相同的intent,則可以獲取此連結開啟權力。
Android App Links (Android 6.0+ / api 23+): 設定一個app為某種link的default handler,使用者可以在Android系統設定中更改此設定。好處包括:
- 需驗證HTTP URL domain ownership,不會被其他app冒用
- 如果使用者沒安裝app的話,會直接導向web
- support Instant Apps (不用安裝app就可以使用app)
- 可以從以下地方導到app content:
- mobile browser中點擊Google search結果
- Google Search app
- Android screen search
- Google Assistant
可以說App Links是強化版本的URL scheme deep links。怎麼實現App Links呢?
簡單來說:
1. 放一個json file到一個https的網站,讓Android用來驗證網站所有權以及app關聯性。
2. 在app manifest宣告某個activity相關的intent filter,以及要設定autoVerify為true,這樣Android才會在launch activity的第一次就驗證關聯性。
很簡單,困難點反而是在怎麼建立一個https網站,如果對我這種backend白癡來說的話。
簡單來說:
1. 放一個json file到一個https的網站,讓Android用來驗證網站所有權以及app關聯性。
2. 在app manifest宣告某個activity相關的intent filter,以及要設定autoVerify為true,這樣Android才會在launch activity的第一次就驗證關聯性。
很簡單,困難點反而是在怎麼建立一個https網站,如果對我這種backend白癡來說的話。
iOS Universal Links
iOS Universal Links跟Android App Links就是一樣的東西,行為:- 如果有安裝app,則點擊網頁中的link會開啟app中的某個特定畫面
- 如果沒安裝app則開啟Safari導到這個link連結的網頁
- 不會被開啟其他宣稱能handle此url的app (同樣經過網站所有權驗證)
- 不過如果原本已經開啟此domain web page,就不會開啟app
上面9JA89QQLNQ是team id,可以在developer portal找到,後面接的就是app id,整個構起一個identify這個app的key, value是一個array (paths),標明哪些path可以由app來handle,如果整個網站都在app有對應的handler,那就像上面黃色字樣寫的"*"。
或是部分被app handle的話:
沒有留言:
張貼留言