將電子郵件連結登入功能從 Firebase Dynamic Links 遷移 (Android)

電子郵件連結驗證先前仰賴 Firebase Dynamic Links,該服務將於 2025 年 8 月 25 日停用。我們在 Firebase Authentication Android SDK 23.2.0 以上版本和 Firebase BoM 33.9.0 以上版本中發布了替代解決方案。如果您的應用程式使用舊版連結,且您想使用替代方法遷移應用程式,請參閱「在 Android 中使用電子郵件連結透過 Firebase 進行驗證」,瞭解如何使用新的 Firebase Hosting 系統。

此外,如果您使用 Firebase Authentication Android SDK 20.0.0 以下版本 (或 Firebase BoM 26.0.0 以下版本) 透過 Firebase Authentication 管理 OAuth 流程,則必須更新至最新版 Authentication SDK 或 BoM (Authentication 20.0.0 以上版本或 BoM 26.0.0 以上版本),才能繼續在 Firebase Authentication 中管理 OAuth 流程。

將相關聯的 Firebase Dynamic Links 網域遷移至 Firebase Hosting 網域

日後,Firebase Authentication 將使用專案的 Firebase Hosting 預設網域,為行動應用程式中的電子郵件連結和其他頻外連結動作建立連結,而非使用 Firebase Dynamic Links 網域。這表示您也需要更新應用程式,將這個預設網域做為關聯網域,用於電子郵件驗證連結,連往您的行動應用程式。

您可以按照「在 Android 中使用電子郵件連結透過 Firebase 進行驗證」一文中的操作說明,更新行動應用程式連結,改用系統自動佈建的新 Firebase Hosting 預設網域。

請按照下列操作說明處理新網域的連結,並指示 Firebase Authentication 開始使用新網域,以便日後產生行動應用程式連結。

如要繼續使用任何自訂 Firebase Hosting 網域,或甚至將自訂 Firebase Dynamic Links 網域設為新的關聯網域,請按照您要使用的網域對應步驟操作。請注意,完成下一節的操作說明後,Firebase Dynamic Links 自訂網域的深層連結功能將會移除,只會保留網域本身,用於建立電子郵件連結。

  1. 設定 Android 應用程式來處理 Firebase Hosting 連結

    1. 如要透過 Android 應用程式處理這些連結,您必須在 Firebase 控制台專案設定中指定應用程式的套件名稱。此外,您也必須提供應用程式憑證的 SHA-1 和 SHA-256。
    2. 如要將這些 Firebase Hosting 連結重新導向至特定活動,您必須在 AndroidManifest.xml 檔案中設定意圖篩選器。意圖篩選器應擷取網域的 Firebase Hosting 連結。在 AndroidManifest.xml 中:

      <intent-filter android:autoVerify="true">
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.BROWSABLE" />
        <category android:name="android.intent.category.DEFAULT" />
        <data
          android:scheme="https"
          android:host="PROJECT_ID.firebaseapp.com or a custom hosting domain"
          android:pathPrefix="/__/auth/links" />
      </intent-filter>
      

    當使用者開啟含有「/__/auth/links」路徑、您指定的配置和主機的託管連結時,應用程式會使用這個意圖篩選器啟動活動,以處理連結。

您可以使用自訂 Firebase Hosting 網域,或重複使用自訂 Firebase Dynamic Links 網域做為新的行動連結網域。

使用自訂 Firebase Hosting 網域

  1. 請按照Firebase Hosting指南設定自訂網域。
  2. 設定 Android 應用程式,以便處理 Firebase Hosting 連結。(操作說明請見上一節)。
  3. 將驗證連結傳送至使用者的電子郵件地址,並使用更新後的 ActionCodeSettings 物件,將自訂網域設為 linkDomain。
  1. 您可以重複使用任何 Firebase Dynamic Links 網域做為自訂網域。不過,系統將不再支援任何 Firebase Dynamic Links 功能 (例如,如果使用者的裝置未安裝應用程式,系統就無法將使用者重新導向至應用程式商店)。
  2. 設定 Android 應用程式來處理 Firebase Hosting 連結 (操作說明請見上一節)。
  3. 將驗證連結傳送至使用者的電子郵件地址,並使用更新後的 ActionCodeSettings 物件,將自訂網域設為 linkDomain。