我正在尝试使用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,则会打开我的应用。
我希望电子邮件中的验证链接可以打开我的应用程序,但现在它会打开该页面,说明动态链接不起作用。