我已经在https://buildcode.app上部署了我的flutter web应用程序,但该网站在ios chrome/safari上挂起,而不是android或桌面上挂起。当我使用控制台检查时,没有出现运行时错误,我不确定在这种情况下如何调试。
发布于 2021-09-07 00:04:42
这里的渲染器可能有问题,因为flutter使用两个渲染器html和canvaskit以及自动(默认)如果我们不选择使用哪一个,它选择最适合目标平台的渲染器,因为当应用程序在移动浏览器中运行时,该选项选择HTML渲染器,而当应用程序在桌面浏览器中运行时,该选项选择CanvasKit渲染器。
SVG渲染器:使用元素、CSS、Canvas元素和SVG的组合。此渲染器的下载大小较小。
CanvasKit渲染器:此渲染器与Flutter移动和桌面完全一致,具有更快的性能和更高的小部件密度,但增加了大约2MB的下载大小。
当我们运行flutter build web
时,flutter会使用自动渲染器运行你的应用程序,因为我们没有提到使用哪个渲染器来构建/运行。我们可以通过使用两个标志html
和canvaskit
来指定要使用的渲染器:这个标志可以与run或Build子命令一起使用。
例如:
flutter run -d chrome --web-renderer html
flutter build web --web-renderer canvaskit
因此,尝试使用ios release的html渲染器构建您的web应用程序,因为该渲染器的下载大小较小,如flutter docs here中所述。
尝试在控制台中运行flutter build web --web-renderer html --release
,然后它应该可以在ios chrome/safari浏览器中完美工作。
https://stackoverflow.com/questions/67863874
复制相似问题