url_launche在本地托管和firebase托管中的行为不同

cclgggtu  于 2022-11-30  发布在  其他
关注(0)|答案(1)|浏览(113)

我已经创建了一个简单的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参数+在多个浏览器上测试

0mkxixxg

0mkxixxg1#

好的-这个问题与url_launcher扩展有关。我使用了过时的API方法-例如,用“launch”代替“launchUrl”,它工作正常

相关问题