1

Firebase 正在通过“注册”按钮从我的应用程序正确发送无密码身份验证电子邮件,电子邮件中的“魔术链接”将我带到我的动态链接域,但我在这一点上卡住了,应用程序没有被打开。

我有一个为 iOS 构建的 Ionic 3 应用程序,使用 Firebase 作为后端。我正在尝试实现 Firebase 无密码身份验证并遵循本教程:

https://medium.com/@vivek040997/how-to-implement-firebase-email-link-passwordless-login-in-ionic-4-for-android-4c61f331c4a0

我已将我的 iOS 应用添加到 Firebase,并在项目设置中添加了捆绑 ID,即 10 个字符。应用 ID 和 10 个字符。开发团队 ID。该应用程序已在 App Store Connect 上创建,但尚未在 App Store 中发布。

我已将 GoogleService-Info.plist 文件放入 Ionic 3 项目的根目录中。

我在 Firebase 中启用了电子邮件/密码和无密码身份验证。

根据教程,我创建了一个新的 index.html 页面(使用 Firebase 工具配置为单页应用程序,并带有一些简单的“登录...”文本)并运行“$firebase init hosting”和“$firebase deploy”。

我通过我的 Firebase 控制台启用了 Firebase 动态链接,并坚持使用简单的“my-app.page.link”域。

我使用以下方法为 Cordova 安装了 Firebase 动态链接插件:

$ cordova plugin add cordova-plugin-firebase-dynamiclinks -- variable APP_DOMAIN="my-project.web.app" --variable PAGE_LINK_DOMAIN="my-app.page.link"

我确定使用正确的项目应用程序域(来自托管)和 page.link 域。我的 package.json 包括:

"cordova-plugin-firebase-dynamiclinks": {
        "APP_DOMAIN": "my-app.web.app",
        "PAGE_LINK_DOMAIN": "my-app.page.link"

我的 config.xml 文件包含正确的值,例如:

<platform name="ios">
    <preference name="GoogleIOSClientId" value="my-value" />
</platform>
<platform name="android">
    <preference name="GoogleAndroidClientId" value="my-value" />
</platform> 

我还安装了 Ionic 原生插件:

$npm install @ionic-native/firebase-dynamic-links

当我构建了一个简单的页面来捕获电子邮件地址并发送“魔术链接”电子邮件时,这些插件似乎工作正常。这样可行。我正确地收到了电子邮件。

当我点击我的 iOS 设备上的魔术链接(在 Safari 中打开)时,我看到一个带有我的应用名称的“preview.page.link”页面,一个小复选框显示“保存我在应用中的位置。链接将被复制继续此页面。” 和一个“打开”按钮。

单击该按钮会将我带到 Firebase 托管的 index.html 页面,其中包含我添加的“登录...”文本,但挂在那里。该应用程序没有打开,所以我只停留在该页面上的 Safari 中。

我现在被困住了:(

不知道如何进一步调试。

任何想法如何获得重定向以正确打开 iOS 应用程序?提前致谢!

4

0 回答 0