我已经创建了一个简单的Flutter Web应用程序,并部署到Firebase主机中。
我使用url_launcher:^6.0.17我创建了一个链接列表,单击这些链接即可在新窗口中打开:
dynamic _launchURL() async {
final parsedUrl = Uri(
path: url,
scheme: 'https',
);
if (await canLaunchUrl(parsedUrl)) {
await launchUrl(
parsedUrl,
// mode: LaunchMode.externalApplication,
webOnlyWindowName: "_blank",
);
} else {
throw 'Could not launch $url';
// TODO: open window to copy url
}
}
它在测试chrome/edge中工作得非常好,但在模拟器和我的手机插入pc时(从AndroidStudio调试时)也是如此
当我部署到Firebase主机时,它的行为方式不同-它在我的主页面的最后一个斜杠后附加了我提供的URL,因此它失败了。
例如,当我在https://. www.example.com上web.app单击在浏览器中看到的链接时,它会尝试在新的浏览器选项卡中打开https://我的应用程序名称.app/目标链接
由于我是firebase的新手,我甚至不知道如何排除故障-例如,获取应用程序日志等。
任何帮助都将不胜感激
我试过:谷歌搜索+堆栈溢出+玩url_launcher参数+在多个浏览器上测试
1条答案
按热度按时间0mkxixxg1#
好的-这个问题与url_launcher扩展有关。我使用了过时的API方法-例如,用“launch”代替“launchUrl”,它工作正常