處理 Android 應用程式連結

深層連結會處理內容 URI。網頁連結會處理 HTTP 和 HTTPS 配置。Android 應用程式連結會處理 autoVerify 屬性。
圖 1. 深層連結、網頁連結和 Android 應用程式連結的功能。

使用者在裝置上點選連結時,心中只有一個目標:取得想看的內容。 開發人員可以設定 Android 應用程式連結,直接將使用者帶往應用程式中的特定內容,略過應用程式選取對話方塊 (又稱消歧義對話方塊)。由於 Android 應用程式連結會運用 HTTP 網址並與網站建立關聯,因此如果使用者未安裝您的應用程式,系統會直接將他們導向網站上的內容。

導入 Android 應用程式連結前,請務必瞭解您可以在 Android 應用程式中建立的不同連結類型:深層連結、網站連結和 Android 應用程式連結。圖 1 顯示這些連結類型之間的關係,以下各節將詳細說明每種連結類型。

深層連結是能夠採用任何配置的 URI,可直接將使用者導向應用程式的特定部分。如要建立深層連結,請新增意圖篩選器,引導使用者在應用程式中進行相應活動,如下列程式碼片段所示:

<activity
    android:name=".MyMapActivity"
    android:exported="true"
    ...>
    <intent-filter>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <data android:scheme="geo" />
    </intent-filter>
</activity>

使用者點選深層連結時,系統可能會顯示消歧對話方塊。這個對話方塊可讓使用者從多個應用程式 (包括您的應用程式) 中,選取一個可處理該深層連結的應用程式。圖 2 顯示使用者點選地圖連結後出現的對話方塊,詢問是否要在 Google 地圖或 Chrome 中開啟連結。

圖 2. 消歧對話方塊

網頁連結是使用 HTTP 和 HTTPS 配置的深層連結。在 Android 12 以上版本中,點選網頁連結 (不是 Android 應用程式連結) 一律會在網路瀏覽器中顯示內容。在搭載舊版 Android 的裝置上,如果您的應用程式或使用者裝置上安裝的其他應用程式也能處理網頁連結,使用者可能不會直接前往瀏覽器。而是會看到類似圖 2 的消歧對話方塊。

以下程式碼片段顯示網頁連結篩選器的範例:

<intent-filter>
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.DEFAULT" />
    <category android:name="android.intent.category.BROWSABLE" />

    <data android:scheme="http" />
    <data android:host="myownpersonaldomain.com" />
</intent-filter>

Android 應用程式連結適用於 Android 6.0 (API 級別 23) 以上版本,是使用 HTTP 和 HTTPS 配置且包含 autoVerify 屬性的網頁連結。應用程式可透過這項屬性,將自己指定為特定類型連結的預設處理常式。因此,使用者點選 Android 應用程式連結時,如果已安裝您的應用程式,系統會立即開啟應用程式,不會顯示消歧對話方塊。

如果使用者不希望您的應用程式成為預設處理常式,可以透過應用程式設定覆寫這項行為。

以下程式碼片段顯示 Android 應用程式連結篩選器的範例:

<intent-filter android:autoVerify="true">
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.DEFAULT" />
    <category android:name="android.intent.category.BROWSABLE" />

    <!-- Do not include other schemes. -->
    <data android:scheme="http" />
    <data android:scheme="https" />

    <data android:host="myownpersonaldomain.com" />
</intent-filter>

Android 應用程式連結具有下列優點:

  • 安全且具體:Android 應用程式連結使用 HTTP 網址,連結至您擁有的網站網域,因此其他應用程式無法使用您的連結。Android 應用程式連結的其中一項必要條件,是透過我們的網站關聯方法驗證網域擁有權。
  • 提供流暢的使用者體驗:Android 應用程式連結會使用單一 HTTP 網址,指向網站和應用程式中的相同內容。因此,如果使用者未安裝應用程式,系統會將他們帶往網站,不會出現 404 錯誤訊息。
  • 支援 Android 免安裝應用程式:使用者不必安裝,就能執行您的 Android 應用程式。如要為 Android 應用程式新增免安裝應用程式支援,請設定 Android 應用程式連結,並前往 g.co/InstantApps
  • 吸引 Google 搜尋使用者:使用者在行動瀏覽器、Google 搜尋應用程式、Android 螢幕搜尋或 Google 助理中點選 Google 網址時,可以直接在應用程式中開啟特定內容。

建立 Android 應用程式連結的一般步驟如下:

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

除了上述說明文件,您也可以使用 Android 應用程式連結小幫手。這個 Android Studio 工具會引導您完成建立 Android 應用程式連結的每個步驟。

如需更多資訊,請參閱下列資源:

管理及驗證 Android 應用程式連結

您可以在 Play 管理中心管理及驗證深層連結。 應用程式上傳至資訊主頁後 (位於「拓展」>「深層連結」下方),資訊主頁會顯示深層連結和設定錯誤的總覽。

圖 3. Play 管理中心資訊主頁的深層連結

資訊主頁包含下列部分:

  • 整體深層連結設定的重點
  • 資訊清單檔案中宣告的所有網域
  • 依路徑分組的網頁連結
  • 設有自訂配置的連結
每個部分都會顯示深層連結狀態,並提供修正錯誤的方法。

如要進一步瞭解資訊主頁,請參閱這份指南