所以..我的应用程序中有一个非常奇怪的错误。
在某个时候,由于某种原因,应用程序停止处理某些事件,例如:适配器在notifydatasetchanded呼叫后不会更新,MapView根本没有响应,活动不会启动,任何类型的片段交易都无济于事 - 列表还在继续。
但是,与此同时,如果我按一些按钮 - 它会显示波纹效果并发射onClick(甚至是通过此点击启动的网络请求成功完成),这意味着主线程仍然可以正常工作。
我能够以编程方式隐藏和显示视图,接收Firebase实时数据库事件并执行各种业务逻辑。
我疯狂的猜测是,要么某种线程负责这种陷入困境(死锁?),也许这是应用程序之后的应用程序工作方式?因为这通常是在使用地图工作很多(Yandex Map)之后发生的。
我真的不明白发生了什么。
我弄清楚了。这种怪异的行为是由于与一个背景线程的UI元素相当多的工作。我不知道为什么以及项目如何工作,但这就是这样。n在从非UI线程打电话给UI后发生的事情。
另外,在Android 8上,它立即破裂,但是在较低的API级别上,应用程序可以在破裂之前使用数小时。