在Android中找不到Flutter Firebase Auth无密码登录(SignInWithEmailAndLink)的动态链接

时间:2019-04-22 10:35:16

标签: dart flutter firebase-authentication

我正在尝试使用Flutter firebase_auth软件包中实现的新的无密码登录方法。 我已经按照步骤接收验证电子邮件,但是在按下电子邮件中的链接之后,而不是重定向到应用程序,而是打开一个说“找不到动态链接”的网页。

我正在使用最新的Flutter稳定频道1.2.1,并且使用的是最新版本的firebase_auth软件包,最新版本为0.8.4 + 5。我还使用了最新版本的firebase_dynamic_links软件包0.2.1。

我尝试使用手动创建的动态链接,如果将其粘贴到浏览器中,它将正确打开我的应用程序。似乎用于无密码登录的firebase_auth API会生成错误的链接。 我已经尝试过参数和URL的不同组合,但是没有成功。

这是我如何调用firebase_auth API:

_auth.sendSignInWithEmailLink(
      email: email,
      url: 'https://mydomain.app/',
      handleCodeInApp: true,
      iOSBundleID: 'app.mypackage',
      androidPackageName: 'app.mypackage',
      androidInstallIfNotAvailable: false,
      androidMinimumVersion: '16',
    );

我还尝试传递以编程方式生成的动态链接:

final DynamicLinkParameters parameters = DynamicLinkParameters(
      domain: 'myapp.page.link',
      link: Uri.parse('https://mydomain.app/'),
      androidParameters: AndroidParameters(
        fallbackUrl: Uri.parse('https://mydomain.app/'),
        packageName: 'app.mypackage',
        minimumVersion: 16,
      ),
    );

final ShortDynamicLink link = await parameters.buildShortLink();

_auth.sendSignInWithEmailLink(
      email: email,
      url: link.shortUrl.toString(),
      handleCodeInApp: true,
      iOSBundleID: 'app.mypackage',
      androidPackageName: 'app.mypackage',
      androidInstallIfNotAvailable: false,
      androidMinimumVersion: '16',
    );

此外,如果我尝试在手机浏览器中手动打开link.shortUrl.toString()生成的URL,则会打开我的应用。

我希望电子邮件中的验证链接可以打开我的应用程序,但现在它会打开该页面,说明动态链接不起作用。

0 个答案:

没有答案