【发布时间】:2020-03-30 15:02:48
【问题描述】:
我们为 Android 和 iOS 开发了一个 Flutter 应用,有不同的风格:dev、test 和 prod,所以我们总共有 6 个应用。为了让用户加入,我们通过电子邮件发送一个 firebase 动态链接(其中包含一个深层链接),以便在用户点击时将其导航到特定屏幕。
预期的行为是,当用户点击动态链接时 - 例如 - dev 应用程序,它会在 dev 应用程序中打开一个屏幕。其他口味类似。
现在这在 Android 上运行良好。
在 iOS 上,如果只安装了一个应用程序,它就可以正常工作,但是如果安装了 dev 和 test 应用程序,那么点击动态链接总是会打开 test 应用程序。当安装了dev、test 和prod 时也是如此:打开test。
这是一个开发问题,与生产无关,因为用户永远不会安装测试或开发应用程序,但这很烦人,因为我们必须一直卸载和重新安装各种版本。
我们的动态链接具有以下格式(“”中的值是占位符):
Dev: https://<app_id>.page.link/?link=http://dev.<mydomain>.com/reset?token=token1&apn=<mypackage>.dev&isi=<isiNumber1>&ibi=<mypackage>.dev
Test: https://<app_id>.page.link/?link=http://test.<mydomain>.com/reset?token=token2&apn=<mypackage>.test&isi=<isiNumber2>&ibi=<mypackage>.test
Prod: https://<app_id>.page.link/?link=http://<mydomain>.com/reset?token=token3&apn=<mypackage>&isi=<isiNumber3>&ibi=<mypackage>
我可以在真实设备上使用的所有 iOS 版本(即 iOS 11、12 和 13)的行为都是相同的。
我们正在使用 Flutter 1.9.1-hotfix6 和 firebase_dynamic_links 0.5.0+1
任何想法这可能是由什么引起的?
【问题讨论】:
-
你检查过this page的底部吗? These instructions 也可能有帮助。
-
@phi 据我了解,此页面上大部分涉及 swift 代码的点都需要由 Flutter 库完成,因为它需要将动态链接转发到 dart 代码。我按照flutter dynamic links library 上的说明进行操作,其中只提到了设置配置,而 swift 部分没有任何更改
-
如果您转到目标设置/信息/URL 类型,您在那里看到任何条目吗?如果是这样,它们对你的口味有什么不同吗?
-
是的,每种口味都有自己的标识符
-
@SOERGI 你有什么解决方案吗?我也在我的应用中寻找相同的功能。
标签: ios firebase flutter firebase-dynamic-links