Android KitKat中的WebView渲染问题

 wepiehr 发布于 2023-02-09 12:11

我一直在研究一个具有WebView的应用程序,其中从资产中加载静态页面(也使用JavaScript).此WebView在KitKat中不起作用,它仍然是空白的.我知道渲染引擎(webkit到chrome)的变化发生在kitkat中的WebView中,并尝试了迁移的步骤,这在Android开发者页面中给出.但它没有帮助.

在logcat中,我收到一个从Chromium源抛出的错误.

W/AwContents? nativeOnDraw failed; clearing to background color.

请建议一个解决方法.

2 个回答
  • 我遇到了同样的问题,但我确实找到了解决方法.您所要做的就是为您的网页明确设置CSS背景.像这样:

    body {
      background: white;
    }
    

    事实证明,如果您没有明确设置网页的背景,WebView将无法绘制所述背景,您最终将获得透明的WebView.

    2023-02-09 12:14 回答
  • 就我而言,在Android 4.4中,无论我在LogCat中设置了什么和这个错误消息,我都得到了黑色背景:nativeOnDraw失败; 清除背景颜色.

    从谷歌搜索,似乎是因为Chromium WebView不支持硬件加速画布渲染.我将此行添加到WebView以关闭硬件加速画布,现在它可以正常工作.

    mWebview.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
    

    2023-02-09 12:14 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有