關於應用程式連結

Android 應用程式連結是 Android 6 以上版本提供的特殊深層連結功能,可讓經過驗證的網站網址立即在 Android 應用程式中開啟對應內容,使用者不必從消歧對話方塊中選取應用程式。為此,Android 會使用網站上託管的 Digital Asset Links 陳述式,在網站和應用程式之間建立經過驗證的安全關聯。驗證關聯後,Android 就能自動將網站的深層連結直接轉送至應用程式處理。

Android 15 推出動態應用程式連結,讓應用程式連結更加強大。有了這項動態功能,您就能即時調整應用程式的深層連結行為,享有更多控制權,而且不必發布新版應用程式。

使用應用程式連結的好處:

  • 流暢的使用者體驗:直接將使用者從搜尋結果、網站、訊息和其他應用程式帶往應用程式中的特定內容。應用程式連結會使用單一網址,連結至網站和應用程式中的相同內容,因此未安裝應用程式的使用者只須前往您的網站即可,不需前往應用程式;也就是說他們不會看到 404 錯誤訊息。
  • 提升安全性:應用程式連結需要驗證網域擁有權,可防止其他應用程式攔截您的連結。
  • 動態設定 (Android 15 以上版本) - 即時更新應用程式的深層連結行為,更靈活地更新虛榮網址、季節性廣告活動或使用者專屬連結等項目。
  • 參與度:您可以透過搜尋結果、廣告、網頁、訊息等連結吸引使用者。

如何支援應用程式連結

  1. 建立應用程式中特定內容的深層連結:在應用程式資訊清單中,為網站 URI 建立意圖篩選器,並將應用程式設為使用意圖資料,以便將使用者帶往應用程式中的適當內容。詳情請參閱這篇文章。
  2. 為深層連結新增驗證:將應用程式設為要求驗證應用程式連結。然後在網站上發布 Digital Asset Links JSON 檔案,驗證擁有權。

或者,您也可以使用 Android Studio 中的 Android 應用程式連結小幫手,逐步建立及驗證 Android 應用程式連結。詳情請參閱「應用程式連結開發人員工具」。

  • 動態應用程式連結 - 裝置必須搭載 Android 15 (API 級別 35) 以上版本,並安裝 Google 服務。
  • 應用程式連結:搭載 Google 服務的裝置,且 Android 版本為 6 (API 級別 23) 以上。
  • 一般 (使用者管理) 深層連結 - 適用於所有裝置上的所有 Android 版本。

應用程式連結的運作方式

應用程式連結是一種特殊的深層連結方式,可讓你完全掌控自家網站連結的處理方式。這項功能與其他深層連結類型採用相同的意圖式系統,但會使用網站上的 Digital Asset Links 檔案,為連結新增驗證步驟。

應用程式連結會使用應用程式資料和您在網站或網域上代管的特殊 assetlinks.json 檔案,在應用程式和網站之間建立安全可靠的關聯。assetlinks.json 檔案會宣告 Digital Asset Link 陳述式,以驗證應用程式關聯。

概念流程如下:

  1. 應用程式資訊清單會在意圖篩選器中宣告網址,並指向您的網站主機。android:autoVerify="true
  2. 安裝應用程式時,Android 系統會從網路伺服器上的已知位置擷取 assetlinks.json 檔案。
  3. 系統會驗證 assetlinks.json 檔案是否有效,以及 sha256_cert_fingerprints 是否與應用程式的簽署憑證相符。
  4. 使用者點選相符的連結時,系統會直接將他們導向應用程式,不會顯示消歧對話方塊。

由於應用程式連結使用 HTTP 網址並與網站建立關聯,因此未安裝應用程式的使用者會直接前往網站上的內容。這樣一來,使用者點選導向您網路資源的深層連結時,應用程式連結就能提供值得信賴的流暢體驗。

自 Android 15 起,應用程式連結將推出動態應用程式連結,功能更加強大。使用動態應用程式連結時,您可以選擇在伺服器端 (assetlinks.json 檔案中) 更新深層連結規則,不必發布新版應用程式。動態應用程式連結支援數位資產連結欄位,可讓您調整深層連結規則。安裝 Google 服務的 Android 裝置會定期重新整理檔案,並動態套用新的深層連結規則。無須更新應用程式。

先前這個檔案主要用於基本驗證。現在,這項工具已成為功能強大的設定工具,可讓您指定路徑、查詢參數、片段和排除條件,提供動態且穩固的深層連結解決方案:

  • 支援排除條件:您可以指定網址的特定路徑或區段不應開啟應用程式,即使這些路徑或區段符合應用程式連結設定也一樣。
  • 支援查詢參數:使用新的查詢參數功能,您可以定義特定參數。如果網址中含有這些參數,應用程式就不會開啟。這項功能可帶來許多令人期待的用途,例如動態排除、A/B 測試,以及針對特定使用者區隔逐步啟用應用程式連結。
  • 動態更新:在伺服器上代管的 assetlinks.json 檔案中,直接指定應用程式處理的網址路徑,即可更新應用程式連結設定,不必更新應用程式。

您也可以透過動態應用程式連結,精細控管要開啟應用程式的網址,包括比對網址路徑、片段和查詢參數。您也可以排除任何相符項目,禁止對方開啟應用程式。詳情請參閱「設定動態規則」。

以下是動態應用程式連結的概念流程:

  1. 應用程式資訊清單會在意圖篩選器中宣告網址,並指向您的網站主機。android:autoVerify="true
  2. 安裝應用程式時,Android 系統會從網路伺服器上的已知位置擷取 assetlinks.json 檔案。
  3. 系統會驗證檔案是否有效,以及 sha256_cert_fingerprints 是否與應用程式的簽署憑證相符。
  4. 系統會剖析您在數位資產連結聲明中 dynamic_app_deep_link_components 欄位內定義的任何深層連結規則,並將其與資訊清單宣告的規則合併。
    1. 使用者點選相符的連結後,系統會直接將他們導向應用程式,不會顯示消歧對話方塊。
  5. 系統會定期重新擷取 assetlinks.json 檔案,取得最新規則,讓您更新連結,而不必更新應用程式。搭載 Android 15 (API 級別 35) 以上版本並安裝 Google 服務的裝置,支援定期重新擷取。

應用實例

  • 季節性行銷活動:零售應用程式可以在 assetlinks.json 檔案中新增「/promo/summer-sale」規則,將使用者導向特定特賣畫面。特賣活動結束後,即可移除規則,使用者不需更新應用程式。
  • 合作夥伴的虛榮網址:如果您與網紅合作,可以建立自訂網址 (例如「/partner/網紅名稱」),並為該網址新增規則。這樣一來,您就能在合作關係變更時,動態追蹤、更新或移除這個網址。
  • 網址路徑 A/B 測試:開發人員可以在特定網址路徑下發布新功能,並在 assetlinks.json 檔案中為該路徑新增規則。這樣一來,他們就能先對部分使用者測試這項功能,然後修改路徑,不必完整部署應用程式。
  • 短期活動:售票或活動應用程式可為特定活動新增網址規則。活動結束後,即可從伺服器刪除這些規則。

與應用程式連結導入作業的相容性

Android 15 中的動態應用程式連結擴充功能,完全相容於在舊版 Android 裝置上現有的應用程式連結實作項目。較舊的應用程式版本無法使用動態設定或設定功能,會改用資訊清單中宣告的任何規則。對於使用舊版 Android 的使用者,應用程式連結仍可正確開啟應用程式,或順利返回網頁。在大多數情況下,您可以安全地部署動態規則,不會影響其他使用者的體驗。

設定動態應用程式連結篩選規則的注意事項

如果您要設定意圖篩選器,以便在 Android 15 以上版本中使用動態應用程式連結,請注意,伺服器端 assetlinks.json 檔案中定義的路徑層級路由規則,無法擴展您在資訊清單檔案意圖篩選器規則中靜態設定的範圍

因此,建議您在資訊清單意圖篩選器中設定最廣泛的範圍,然後依據伺服器端的 assetlinks.json 規則進一步調整。完成理想設定後,您就能動態新增應用程式連結,這些連結會符合資訊清單中設定的廣泛範圍。

規劃應用程式連結導入作業

如要支援應用程式連結,您必須在應用程式中導入,並在伺服器端設定 assetlinks.json 檔案。以下列出一般準備和實作工作,並提供其他資源的連結,方便您查看詳細資料。

  • 規劃深層連結:首先評估您需要的深層連結、使用的網址模式、更新方式和時機,以及您希望每個網址在應用程式中解析為的活動或動作。
  • 支援動態應用程式連結 - 為最新 Android 裝置的使用者提供最佳體驗。針對 Android 15 以上版本的使用者,善用動態應用程式連結。
  • 規劃動態篩選器規則:如果您使用動態應用程式連結,請規劃伺服器端規則如何與應用程式資訊清單中靜態定義的規則搭配運作。請注意,assetlinks.json 檔案中的篩選規則無法擴大應用程式資訊清單篩選器的範圍。您應規劃資訊清單篩選器,盡可能宣告最廣泛的範圍,然後視需要透過伺服器端規則修正這些規則。詳情請參閱「設定動態規則」。
  • 為連結建立及測試意圖篩選器:在意圖篩選器中宣告深層連結,並測試網址模式比對和傳入意圖處理作業。如要支援動態應用程式連結,請注意,您可能需要將部分精細路徑移至伺服器端 JSON 檔案。
  • 從傳入的應用程式連結意圖讀取資料 - 正確處理傳入的深層連結意圖,並將其解析為適當的活動。應用程式連結的導入方式與一般深層連結相同,請參閱「從傳入的 Intent 讀取資料」。
  • 設定網站關聯和動態規則 - 如要支援應用程式連結,您必須設定代管於網站或網域的伺服器端檔案。Android 裝置會擷取這個檔案,以驗證您應用程式的應用程式連結實作項目。詳情請參閱這篇文章。
  • 測試應用程式連結驗證 - 確認 Android 系統是否能順利自動驗證深層連結。使用偵錯和端對端測試,確認設定安全無虞,且在所有已驗證的應用程式連結路徑中都能正常運作。
  • 瞭解如何使用 Android Studio 和 Play 管理中心等工具設定應用程式連結。詳情請參閱本文。