android频繁点击控件,导致系统奔溃

        之前公司海思3798平台android7.0上面碰到一个问题,频繁点击应用的控件,导致系统奔溃。查看anr日志只看到ui线程消息队列被阻塞,却没有提示是否应用异常导致。既然没有看到应用异常,那就从系统方面着手,通过busybox top -d 1查看进程cpu占用。发现频繁点击会多次点用system进程的audiotrack线程,每次点击都会new新的audiotrack线程,导致系统cpu溢出,系统卡死重启。

        因为是触摸屏控制设备,应用不需要用到声音播放和提示音。所以解决方法就是,进入应用后,关闭提示音播放,这样点击控件时候,不会触发提示音。如果应用没有系统权限,设置关闭提示音,会提示异常,先判断是否有settings权限,在设置关闭提示音频播放。

      //1 打开 2 关闭

      Settings.System.putInt(getContentResolver(),Settings.System.SOUND_EFFECTS_ENABLED, 0);

  对比了amlogic芯片,没有出现这个问题,可能这个是海思早期的一个bug,毕竟没人会对着一个按钮疯狂点击,而且出现概率点击1%-4%左右

       

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值