几年前我们发布了一个android应用程序,并且在子线程中使用了View.setVisibility()方法。 这些年来一直没有问题,直到Android O Developer Preview 4. 当我在Android O Developer Preview 4上测试我们的APP时,发现子线程中的View.setVisibility()会抛出一个异常,如下所示:为什么在以前版本的后台线程中操作UI时不会引发异常?
android.view.ViewRootImpl $ CalledFromWrongThreadException:只有创建视图层次结构的原始线程可以触及其视图。
我已将此方法移至主线程并解决此问题。
但我的问题是:
为什么也不例外在以前的版本(Android中O开发者预览版,甚至没有任何的异常)?
Android O中的哪些变化导致此问题?我们应该向我们的客户解释,但我们无法在Android开发人员的网站上找到证据。