Firebase 动态链接不适用于 Android 上的 Firebase 身份验证

问题描述 投票:0回答:0

我在设置 Firebase 动态链接和 Firebase 身份验证验证/密码重置时患有脑动脉瘤。

一旦用户收到用于帐户验证或密码重置的 firebase 动态链接,格式如下:

https://XXX.page.link?link=https://XXX.firebaseapp.com/__/auth/action?apiKey%...

在 Android Manifest 中我确实放了

            <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:host="XXX.page.link" android:scheme="https"/>
            </intent-filter>
        </activity>

Firebase 为该应用程序提供了正确的 SHA-1/256 密钥 + 这是链接的生成方式:

 await FirebaseAuth.instance.sendPasswordResetEmail(
            email: event.email,
            actionCodeSettings: ActionCodeSettings(
              handleCodeInApp: true,
              dynamicLinkDomain: "XXX.page.link",
              iOSBundleId: "com.YYY.XXX",
              androidPackageName: "com.YYY.XXX",
              url: 'https://XXX.app/password-reset/${event.email}',
            ));

然而,每次收到动态链接时,它都会打开 Web 浏览器而不是应用程序。

我也使用

adb shell am start -W -a android.intent.action.VIEW  -d "https://XXX.page.link?link=https://XXX.firebaseapp.com/__/auth/...
测试过它,但它仍然在 Web 浏览器中打开。

有什么想法吗?我可能遗漏了一些明显的东西。

--编辑

adb shell pm get-app-links --user cur com.YYY.XXX

returns:
    User 0:
      Verification link handling allowed: true
      Selection state:
        Disabled:
          XXX.page.link

--编辑#2

好的,我想我已经弄清楚了——我需要在应用程序设置中手动启用它(为什么?)。有没有办法为用户自动启用它?

android flutter firebase firebase-authentication firebase-dynamic-links
© www.soinside.com 2019 - 2024. All rights reserved.