android 硬件加速问题

收到用户反馈vivo手机打开某个页面有时会崩溃,也不是必现,查收集到的崩溃日志也没法定位到工程代码,都是底层的,网上查有可能是硬件加速引起,担心其他页面也会有问题,就把整个应用的硬件加速关闭了,测试其他页面不会出现性能或其他问题。上线后一段时间没收到户反馈崩溃问题。

后来开发其他功能发现有个页面有异常,点击按钮把某view(ViewGroup类型)设为不隐藏时,竟然没有完全隐藏,还会显示部分,需要再点击页面获取焦点才隐藏,第一次碰到这样的问题,不理解,换了手机试试,小米不会出现,华为、5X、三星都有,开始怀疑会不会跟有动画有关,尝试了postInvalidate和postInvalidateDelayed都不行,因为点击重新获取焦点可以完全隐藏,就在设置隐藏后获取某个控件焦点requestFocusFromTouch,临时解决问题。

但后来测试也发现了类型的问题,都是比较隐藏的功能,所以没有很快暴露出来,有几个页面都出现了。怀疑是整个应用受影响,开始对比是哪个版本开始的,对比发现,是最近几个版本出现的。对比代码,主题、打包配置都没变化,唯一影响全局的就只有硬件加速关闭了。去掉应用级别的关闭硬件加速后,问题完美解决。

另外,测试也发现了在关闭硬件加速的版本上,PtrFrameLayout嵌套WebView的滚动也有体验问题,轻轻的滑动可能会回弹,滑动不顺畅。也是硬件加速关闭后引起的。

解决:应用级别不加硬件加速配置,对有问题的页面禁止硬件加速。

 

android硬件加速器及其问题小结:

https://blog.youkuaiyun.com/maybe_windleave/article/details/8946368

 

Android硬件加速 问题和错误:

https://blog.youkuaiyun.com/growing_tree/article/details/19974851

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值