一个页面需要滑动才能加载数据的BUG

Bug note

Posted by Roger on March 31, 2017

一个页面需要滑动才能加载数据的BUG

今天遇到了一个页面需要滑动才能加载出数据的神奇问题~

努力排查后发现,由于是在非主线程调用了 RecycleView 的刷新,造成了列表的卡顿。

公司在项目前期使用了很多的 RxJava,造成很多的回调,其中的业务逻辑乱飞,各个回调方法运行在哪个线程很难判断,可读性极差,稍不注意就会造成在业务线程调用 UI 更新。

如果直接操作控件应该就会报一个错误,而恰巧我们调用的是 adaper 的界面刷新,根据 Google 的文档,在非主线程调用界面刷新将会造成无法预知的错误,我们这的 一加 和 三星 的表现就是界面完全卡住,需要手动的拖动列表才能重新刷新出来,而 谷歌5x 则大部分表现正常,不得不说亲儿子就是亲儿子.

Stay hungry stay foolish.