【发布时间】:2020-11-30 16:33:48
【问题描述】:
我从 Firebase 控制台创建了一个 firebase 动态链接。我已经尝试在我的代码中实现它,当我通过使用导航方法单击 example.page.link/ABCD 冷启动我的应用程序时,它会导致无限循环。如果应用程序在后台,则没有任何问题。
问题: 当应用程序从冷启动并导航到新页面时触发无限循环。
知道如何解决这个问题吗?
编辑
示例链接:www.example.com/testing?title=testing_deep_link
Future firebaseDynamicLinkInit() async {
final PendingDynamicLinkData data =
await FirebaseDynamicLinks.instance.getInitialLink();
_handleDeepLink(data);
FirebaseDynamicLinks.instance.onLink(
onSuccess: (PendingDynamicLinkData dynamicLinkData) async {
_handleDeepLink(dynamicLinkData);
}, onError: (OnLinkErrorException e) async {
print('${e.message}');
});
}
void _handleDeepLink(PendingDynamicLinkData data) {
final Uri deepLink = data?.link;
if (deepLink != null) {
var title = deepLink.queryParameters['title'];
if (title != null) {
// START This part trigger the problem
Navigator.of(context).popUntil((route) => route.isFirst);
Navigator.of(context).pushReplacementNamed('/Pages', arguments: 6);
// END This part trigger the problem
}
}
return null;
}
【问题讨论】:
-
能否分享部分代码。
-
@AjayKumar 我已经用代码编辑了帖子。你现在可以看看。谢谢。
标签: firebase flutter dart firebase-dynamic-links