我正在开发一个 flutter 项目,为了简单起见,决定允许将“帮助和支持”部分的用户重定向到网站。因此,我尝试创建一个异步函数来允许重定向。
因此,我尝试使用 Future 函数,该函数使用名为 launch_url 的 launchURL。
Future<void> _launchURL(Uri url) async {
if (await canLaunchUrl(url)) {
await launchUrl(url);
} else {
throw 'Could not launch $url';
}
}
但是,它总是抛出这个异常:
I/UrlLauncher(30788): component name for https://flutter.dev/ is null
I/UrlLauncher(30788): component name for https://flutter.dev is null
E/flutter (30788): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: Could not launch https://flutter.dev/
E/flutter (30788): #0 _launchURL (package:clothing_app/screens/settings.dart:385:5)
E/flutter (30788): <asynchronous suspension>
E/flutter (30788):
注意:当我尝试在我朋友的计算机上运行时,它运行正常,没有出现异常。
在这两种情况下,我们都使用 Android Studio 模拟器来查看应用程序的布局,并使用 VS Code 来编写 flutter 代码(连接到模拟器设备)。我还尝试在我的物理手机上运行代码,但出现了同样的问题。