Flutter Firebase 动态链接不适用于新的 ios 应用安装
Posted
技术标签:
【中文标题】Flutter Firebase 动态链接不适用于新的 ios 应用安装【英文标题】:Flutter Firebase Dynamic Link not working on new ios app install 【发布时间】:2020-05-05 12:35:02 【问题描述】:我正在尝试处理我的颤振应用程序中的动态链接,并且当应用程序已经安装时它们可以正常工作。无论应用程序在后台打开还是关闭,该链接都可以正常工作。但是,当我在未安装应用程序时尝试使用链接时,我被正确带到了应用程序商店,但是一旦我在安装完成后从应用程序商店中打开应用程序,它只会打开应用程序,而我的动态链接功能永远不会执行。
我的动态链接是这样的:
https://startingxi.page.link/?link=https://url-redacted/game/gameId&apn=myapn&isi=mysi&ibi=myibi&st=new%20team%20vs%20&sd=1%20-%202&efr=1
我已经尝试过 efr=1
和没有那个。
我的颤振代码:
@override
void initState()
super.initState();
initDynamicLinks();
futureInitState = initStateAsync();
Future<void> initDynamicLinks() async
final PendingDynamicLinkData data = await FirebaseDynamicLinks.instance.getInitialLink();
final Uri deepLink = data?.link;
await processDeepLink(deepLink);
FirebaseDynamicLinks.instance.onLink(onSuccess: (PendingDynamicLinkData dynamicLink) async
final Uri deepLink = dynamicLink?.link;
await processDeepLink(deepLink);
, onError: (OnLinkErrorException e) async
print('onLinkError');
print(e.message);
displayFlushBar('$e.message');
);
我尝试将initDynamicLinks
放在我的futureInitState
中,这是我的FutureBuilder
的一部分,它在启动时执行其他异步操作。任何帮助,将不胜感激。我不确定如何调试此问题,这是我的第一次 ios/app 开发体验,所以我不确定 ios 设备上是否有一些日志可能会有所帮助?但目前看来,我似乎需要先部署到生产环境并在应用商店中进行更改,然后才能测试任何东西,这似乎不太理想。但由于动态链接在其他用例中有效,我很难解决问题。
谢谢!
【问题讨论】:
github.com/FirebaseExtended/flutterfire/issues/1861 你找到解决这个问题的方法了吗? 你找到解决办法了吗? 【参考方案1】:在应用安装后打开 Firebase 动态链接问题的常见故障排除步骤是确保 ibi
参数的值与应用的 Bundle ID 匹配。
对于 Google 提供的 *.page.link
域:在应用的 Xcode 项目的 Capabilities 选项卡中,应启用 Associated Domains
,并在 Associated Domains 列表中添加以下内容:applinks:your_dynamic_links_domain
。
此外,请验证您的 FDL https://your_dynamic_links_domain/apple-app-site-association
的 AASA 是否包含您的应用的条目。验证 "appID":"team-id.bundle-id"
值对于您的应用是否正确
如果这些步骤不起作用,最好联系Firebase Support,因为他们有工具可以更深入地诊断这个问题。
【讨论】:
以上是关于Flutter Firebase 动态链接不适用于新的 ios 应用安装的主要内容,如果未能解决你的问题,请参考以下文章
firebase 动态链接预览链接不适用于 facebook Messenger
iOS 应用程序:Firebase 动态链接不适用于最新的 Pod 文件
为啥这些 Firestore 规则不适用于 Flutter Firebase 插件?