在我的 Flutter 应用程序中,我实现了动态链接,我发送带有 id 参数的链接,当应用程序收到它时,它会导航到具有给定 id 的详细屏幕。它在 Android 中工作得很好,但是在 iOS 上,长动态链接按预期工作,但是当我发送短链接时,它给了我这个,并且只打开应用程序,handleDynamicLink 函数未触发。
FLTFirebaseDynamicLinks:尚未提供动态链接的网址。请尝试使用长动态链接打开您的应用程序,看看是否有效
因此,我正在发送一条带有创建的链接的 WhatsApp 消息,但长链接不是我想要发送的内容。
我的动态链接初始化代码
void dynamicLinkInit() async {
final PendingDynamicLinkData? initialLink = await FirebaseDynamicLinks.instance.getInitialLink();
if (initialLink != null) {
handleDynamicLink(initialLink);
}
FirebaseDynamicLinks.instance.onLink.listen((PendingDynamicLinkData dynamicLink) async {
handleDynamicLink(dynamicLink);
}).onError((e) => l.w(e));
}
void handleDynamicLink(PendingDynamicLinkData dynamicLink) {
final Uri uri = dynamicLink.link;
l.w(uri);
final queryParams = uri.queryParameters;
if (queryParams.isNotEmpty && queryParams['id'] != null) {
String id = queryParams["id"]!;
l.w(id);
Get.to(() => RequestDetail(id: id));
}
}
Run Code Online (Sandbox Code Playgroud)
我还添加了关联域和 URL 类型部分的链接。
您知道为什么链接在长链接时有效但在短链接时不起作用吗?
我正在尝试运行 flutter 应用程序,但收到此错误
\n\nLaunching lib/main_dev.dart on iPhone 15 in debug mode...\nmain_dev.dart:1\nUpgrading Pods-Runner-frameworks.sh\nXcode build done. 54.7s\nFailed to build iOS app\nError (Xcode): Framework \'Pods_Runner\' not found\n\nError (Xcode): Linker command failed with exit code 1 (use -v to see invocation)\n\nRun Code Online (Sandbox Code Playgroud)\n版本
\n[\xe2\x9c\x93] Flutter (Channel stable, 3.10.5, on macOS 14.0 23A344 darwin-arm64, locale en-TR)\n \xe2\x80\xa2 Flutter version 3.10.5 on channel stable at /Users/yarenalbayrak/Developer/flutter\n \xe2\x80\xa2 Upstream repository https://github.com/flutter/flutter.git\n \xe2\x80\xa2 Framework revision 796c8ef792 (4 months ago), 2023-06-13 15:51:02 -0700\n \xe2\x80\xa2 Engine …Run Code Online (Sandbox Code Playgroud)