那些年淘汰的控件留下的坑!CrossWalk

项目场景:

没有错,这又是一个老项目。当时框架构建时追求时尚选择了CrossWalk来代替Android Webview。。这该死的冲动!!


问题描述:

项目中集成使用了CrossWalk,因设备系统升级所有的crosswalk版本又14.+更新至23.+最后一版,多个项目出现闪退。。报错内容很简单。。。

A/libc: Fatal signal 11 (SIGSEGV), code 1, fault addr 0xba2b105c in tid 432 (Chrome_FileThre)
        }
对于我这个把C跟汇编忘得99.6%的人可真是一个surprise,当即排查问题所在,然而捣鼓了大半天没有任何头绪,报错信息还仅仅是so文件中的指令,表示完全看不明白。(因为版本升级,没有办法还原之前的版本,还原后无法正常使用),一开始我想到了是不是CPU架构的问题不兼容,但是随着另外一个同版本CrossWalk的正常运行我就放弃了这个想法。。相同的版本为什么另外一个项目能正常使用呢?

处理过程:

本来想着是由于项目中某个地方的代码引起的so问题,花了半天的时间把项目进行完全的还原,删减。。最后基本把出问题的项目中代码几乎全部删除干净了,发现问题还在。。那么好的跟java代码没有关系了,开始着手Style跟插件版本号这些。。。仍然徒劳无功。。我分分钟想要放弃求助大佬了。。。。最后抱着试一下的想法又新建了一个demo来运行发现也是没有任何问题的,然后又跟之前删减后的原项目做了个对比。。这会发现了,原项目里面还留有一个so的文件夹,下面存放了所有so文件。然后我最后把这个文件夹删掉了。。。。神奇的事情发生了,好了!!!!!

代码里没有任何调用这些so的地方,我是完全删除了的。。然后我把这些so又拷贝到demo项目里面,bug真的复现了。
最终经过重重排查终于让我查到了百度的2个so跟crosswalk有兼容性问题,2个so一删。。。问题立马就没了
这个问题真的是简直了。。mark


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值