GeoView.CollapseAttribution () Java.Lang.RuntimeException: Only the original thread that created a view hierarchy can touch its views.

606
2
01-08-2019 11:19 AM
NathanWestfall1
New Contributor III

In our crash reporting, we get this error every so often.  Is there a way we can prevent it and make sure that it's called on the UI thread or is that something only you can do?

ExceptionDispatchInfo.Throw ()
JniEnvironment+InstanceMethods.CallVoidMethod (Java.Interop.JniObjectReference instance, Java.Interop.JniMethodInfo method, Java.Interop.JniArgumentValue* args)
JniPeerMembers+JniInstanceMethods.InvokeVirtualVoidMethod (System.String encodedMember, Java.Interop.IJavaPeerable self, Java.Interop.JniArgumentValue* parameters)
TextView.SetSingleLine (System.Boolean singleLine)
GeoView.CollapseAttribution ()
GeoView.OnGeoViewTapped (Android.Graphics.PointF screenLocation, Esri.ArcGISRuntime.UI.DeviceIndependentPointingDevice device)
UserInteractionHandler.OnTapped (Android.Graphics.PointF screenLocation, Esri.ArcGISRuntime.UI.DeviceIndependentPointingDevice device)
AndroidDeviceInteractionHandler.OnSingleTapConfirmed (Android.Views.MotionEvent e)
GestureDetector+IOnDoubleTapListenerInvoker.n_OnSingleTapConfirmed_Landroid_view_MotionEvent_ (System.IntPtr jnienv, System.IntPtr native__this, System.IntPtr native_e)
(wrapper dynamic-method) System.Object.5e0ab96e-6fb7-4c66-841e-397ae52430ca(intptr,intptr,intptr)
android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
android.view.ViewRootImpl.checkThread(ViewRootImpl.java:6442)
android.view.ViewRootImpl.requestLayout(ViewRootImpl.java:919)
android.view.View.requestLayout(View.java:17498)
android.view.View.requestLayout(View.java:17498)
android.view.View.requestLayout(View.java:17498)
android.view.View.requestLayout(View.java:17498)
android.view.View.requestLayout(View.java:17498)
android.view.View.requestLayout(View.java:17498)
android.view.View.requestLayout(View.java:17498)
android.view.View.requestLayout(View.java:17498)
android.view.View.requestLayout(View.java:17498)
android.widget.RelativeLayout.requestLayout(RelativeLayout.java:360)
android.view.View.requestLayout(View.java:17498)
android.view.View.requestLayout(View.java:17498)
android.view.View.requestLayout(View.java:17498)
android.view.View.requestLayout(View.java:17498)
android.view.View.requestLayout(View.java:17498)
android.widget.TextView.setLines(TextView.java:3386)
android.widget.TextView.applySingleLine(TextView.java:7373)
android.widget.TextView.setSingleLine(TextView.java:7351)
md5110b0bbb3c85ab617c45131eadbc2cc8.AndroidDeviceInteractionHandler.n_onSingleTapConfirmed(Native Method)
md5110b0bbb3c85ab617c45131eadbc2cc8.AndroidDeviceInteractionHandler.onSingleTapConfirmed(AndroidDeviceInteractionHandler.java:66)
android.view.GestureDetector$GestureHandler.handleMessage(GestureDetector.java:273)
android.os.Handler.dispatchMessage(Handler.java:102)
android.os.Looper.loop(Looper.java:135)
android.os.HandlerThread.run(HandlerThread.java:61)

0 Kudos
2 Replies
NathanWestfall1
New Contributor III

We had this issue on 100.2.1 and is still occurring on 100.4.

0 Kudos
MichaelBranscomb
Esri Frequent Contributor

Hi Nathan,

Is this still reproducible with v100.5?

Cheers

Mike

0 Kudos