iOS Safari上的Flutter Web未显示(渲染?)?)well

eulz3vhy  于 2023-05-19  发布在  Flutter
关注(0)|答案(1)|浏览(247)

嗨,我用Flutter做了一个简单的网页,我使它响应,所以我检查了chrome dev工具,如果所有工作正常,它确实。
像这张图片,那是从Chrome开发工具

问题是,当我部署firebase主机时,我在带有Safari的Iphone8 Plus上测试了它,菜单显示不好,我不知道为什么

如你所见,菜单被切掉了。此外,如果你知道如何删除恼人的底部白色酒吧,这是只在移动的网络上创建,我会很感激。

cetgtptt

cetgtptt1#

如果您的Flutter应用面向Web并使用CanvasKit渲染器,您可能已经注意到您的应用在Safari中的性能比在Chrome中的性能差得多。这是因为WebGL 2.0的Safari实现非常糟糕。将以下脚本标记放入index.html中,如果用户代理是Safari,它将简单地禁用WebGL 2.0。

<script>
  if (
    navigator.userAgent.indexOf("Safari") !== -1 &&
    navigator.userAgent.indexOf("Chrome") === -1
  ) {
    var originalGetContext = HTMLCanvasElement.prototype.getContext;
    HTMLCanvasElement.prototype.getContext = function () {
      var contextType = arguments[0];
      if (contextType === "webgl2") {
        return;
      }
      return originalGetContext.apply(
        this,
        [contextType].concat(Array.prototype.slice.call(arguments, 1)),
      );
    };
  }
</script>

相关问题