We get error reports from Crashlytics affecting a sizable portion of our users (around 10% of them). It's a CalledFromWrongThreadException.
The problem is I don't know what's causing the issue and I don't have it myself. Here is the log:
Caused by android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
at android.view.ViewRootImpl.checkThread(ViewRootImpl.java:7282)
at android.view.ViewRootImpl.invalidateChildInParent(ViewRootImpl.java:1197)
at android.view.ViewGroup.invalidateChild(ViewGroup.java:5748)
at android.view.View.invalidateInternal(View.java:15082)
at android.view.View.invalidate(View.java:15046)
at android.view.View.invalidate(View.java:15029)
at android.view.SurfaceView$1.handleMessage(SurfaceView.java:142)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:164)
at com.unity3d.player.UnityPlayer$c.run(Unknown Source:20)
The com.unity3d.player.UnityPlayer$c.run(Unknown Source:20) is not really helpfull here as the origin is unknown, I guess it could come from a third party library (GVR SDK, Fabric...).
Does anyone have the same issue?
For reference we are using Unity version : 5.6.0f3 and the bug is reported only for Pixel and Pixel XL phones.