项目遇到问题,所有按钮点击无响应,还会触发ANR。通过分析日志发现,存在同步屏蔽消息未被移除,导致消息无法消费的情况,如下:
![](https://img.haomeiwen.com/i1170154/f8158608b0e31bcc.png)
排查过程中,添加日志打印。最后排查到是因为在子线程刷新UI(子线程调用invalidate),导致同步屏障消息未被移除。
//消息队列打印
Looper.getMainLooper().dump(new Printer() {
@Override
public void println(String x) {
Log.d(TAG, "println: "+x);
}
},"");
网友评论