[Android] 'WebView-- Caught a crash, signum=11'的解决

碰到一个奇怪的问题:

WebView在显示本地的一个h5页面时,在Mi 2S可显示,页面上同样属性的按钮有两个可点击,但第三个按钮点击导致Activity必定出现崩溃。崩溃无详细日志,只有如下两句线索:

// W/crash_handler(19125): Caught a crash, signum=11

// 14594-14594/com.eln.base E/webcore: Report WebCore crash to the ErrorReportUtils at:Wed Oct 28 18:44:51 格林尼治标准时间+0800 2015 //blog from sodino.com

该页面在其它手机包括小米的其它系列手机都正常,只出现在Mi 2S。

H5开发人员跟进后发现崩溃点是在h5界面的渲染阶段发生崩溃;无进一步解决办法。

去吃饭时走在路上考虑到Android上和渲染有关的是硬件加速了;

回来后检查代码发现整个app在AndroidManifest.xml中的application标签处全局开启硬件加速,

所以将其硬件加速开关设置关闭后,android:hardwareAccelerated="false",发现WebView正常。

后续为进一步减少代码改动所引起的影响范围,规避此bug的解决方案设定为:

1. 判定为Mi 2系列手机时

2. 对WebView的界面关闭硬件加速

// if ("MI 2SC".equals(deviceName)) {

if (deviceName!= null && deviceName.toLowerCase().startsWith("mi 2")) {

mWebView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);

}

附:[Android官方Hardware Acceleration在不同界面的控制级别说明](

http://developer.android.com/intl/zh-cn/guide/topics/graphics/hardware-accel.html)

版权声明:本文为博主原创文章,未经博主允许不得转载。

[Android] 'WebView-- Caught a crash, signum=11'的解决

时间: 2024-08-01 12:59:48

[Android] 'WebView-- Caught a crash, signum=11'的解决的相关文章

android webview js alert对话框 不能弹出 解决办法

在配置了webview的 setting属性后,以前设置的都是可以直接弹出来的,今天写一个小demo时候莫名其妙的发现alert怎么也出来,即使设置了这么多也不行: webSettings.setJavaScriptEnabled(true); webSettings.setJavaScriptCanOpenWindowsAutomatically(true); webSettings.setAllowFileAccess(true);// 设置允许访问文件数据 webSettings.setS

android WebView详解,常见漏洞详解和安全源码(下)

上篇博客主要分析了 WebView 的详细使用,这篇来分析 WebView 的常见漏洞和使用的坑. 上篇:android WebView详解,常见漏洞详解和安全源码(上) 转载请注明出处:http://blog.csdn.net/self_study/article/details/55046348 对技术感兴趣的同鞋加群 544645972 一起交流. WebView 常见漏洞 WebView 的漏洞也是不少,列举一些常见的漏洞,实时更新,如果有其他的常见漏洞,知会一下我-- WebView

屏蔽电信流氓广告造成的诡异的问题--Android WebView 长时间不能加载页面

发现在家里的时候用Android App里的WebView打开网站很慢,会有十几秒甚至更长时间的卡住. 但是在电脑上打开同样的网页却很快. 查找这个问题的过程比较曲折,记录下来. 抓取Android网络数据 为了调试这个问题,首先要抓取Android的网络包数据.开始时,是想用Wireshark来抓包的,但是很麻烦,tcpdump在手机要root权限. 于是转换思路,能不能在Android上设置代理,来抓包? 但是fiddler没有linux版本,于是转用BurpSuite了. 设置Androi

Android:WebView中对图片注册上下文菜单

前言 今天一朋友问我一个问题,就是如何在WebView控件中的图片增加上下文菜单,以便增加保存图片等功能.今天就给他简单做了一个演示Demo,现写下来,给有相同问题的朋友提供些许思路吧. 概要实现 其实这个功能很简单,没有太复杂的东西,就是对WebView的控件的使用,一是给WebView注册了上下文菜单事件,二是在响应事件中去判断事件源的类型,如果是图片类型,则把url取出来 注册上下文菜单事件 这个就比较简单了通过下面的代码即可完成. WebView vw = (WebView) findV

Android WebView的坑总结

最近把做好的iPad HybridApp向Android迁移,碰到的坑太多了,让我这个折腾过Android接近4年的老鸟都头疼!现在把前人遇到的都列出来,再慢慢解决自己的,目前已经解决了android键盘覆盖问题,下面最棘手的问题就是屏幕高度的适配问题了!本文会不断更新 1. Andrid4.1事件穿透BUG 原因不明 2. Android2.X 中文不支持粗体 3. 目前发现的WEBVIEW尺寸宽度有320. 360. 400等多个尺寸 该分辨率或许和屏幕尺寸有关 目前测试结果 320-640

android WebView详解,常见漏洞详解和安全源码

这篇博客主要来介绍 WebView 的相关使用方法,常见的几个漏洞,开发中可能遇到的坑和最后解决相应漏洞的源码,以及针对该源码的解析. 由于博客内容长度,这次将分为上下两篇,上篇详解 WebView 的使用,下篇讲述 WebView 的漏洞和坑,以及修复源码的解析. 下篇:android WebView详解,常见漏洞详解和安全源码(下) 转载请注明出处:http://blog.csdn.net/self_study/article/details/54928371. 对技术感兴趣的同鞋加群 54

Android WebView加载Chromium动态库的过程分析

Chromium动态库的体积比较大,有27M左右,其中程序段和数据段分别占据25.65M和1.35M.如果按照通常方式加载Chromium动态库,那么当有N个正在运行的App使用WebView时,系统需要为Chromium动态库分配的内存为(25.65 + N x 1.35)M.这是非常可观的.为此,Android使用了特殊的方式加载Chromium动态库.本文接下来就详细分析这种特殊的加载方式. 老罗的新浪微博:http://weibo.com/shengyangluo,欢迎关注! 为什么当有

Android WebView问题汇总以及解决方法

Android WebView常见问题解决方案汇总: 1.Android webview背景设置为透明无效 webview是一个使用方便.功能强大的控件,但由于webview的背景颜色默认是白色,在一些场合下会显得很突兀(比如背景是黑色). 此时就想到了要把webview的背景设置为透明,这样就可以与其背景融为一体. 在2.X的平台下,一般设置webview背景为透明的方法如下: wvContent.setBackgroundColor(0); 但当程序在4.0上使用时,发现居然这种设置方法无法

android webview 全屏播放H5 (Playing HTML5 video on fullscreen in android webview)

最近关于webview的问题遇到的比较多,关于如何在webview中全屏播放视频,网上有很多种解决方法,这里也有一种方法,试了几种后发现还是这种比较好用. 这里就拿出来与大家分享,出自http://stackoverflow.com/questions/15768837/playing-html5-video-on-fullscreen-in-android-webview#userconsent# 代码里面已经有很好的注释了,我就不画蛇添足了. VideoEnabledWebChromeCli