Process Name: 'xx.yyy.zzz.qqq.www.uuu.operator' Thread Name: 'main' Back traces starts. java.lang.NullPointerException: Attempt to invoke virtual method 'float android.view.MotionEvent.getX(int)' on a null object reference at com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener.k(SourceFile:3) at com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener.a(SourceFile:12) at com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener.onTouch(SourceFile:15) at com.esri.arcgisruntime.mapping.view.MapView.onTouchEvent(SourceFile:1) at android.view.View.dispatchTouchEvent(View.java:15188) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3161) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2818) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3167) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2832) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3167) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2832) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3167) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2832) at androidx.compose.ui.input.pointer.PointerInteropFilter_androidKt$pointerInteropFilter$3.invoke(PointerInteropFilter.android.kt:113) at androidx.compose.ui.input.pointer.PointerInteropFilter_androidKt$pointerInteropFilter$3.invoke(PointerInteropFilter.android.kt:105) at androidx.compose.ui.input.pointer.PointerInteropFilter$pointerInputFilter$1$dispatchToView$3.invoke(PointerInteropFilter.android.kt:309) at androidx.compose.ui.input.pointer.PointerInteropFilter$pointerInputFilter$1$dispatchToView$3.invoke(PointerInteropFilter.android.kt:294) at androidx.compose.ui.input.pointer.PointerInteropUtils_androidKt.toMotionEventScope-ubNVwUQ(PointerInteropUtils.android.kt:81) at androidx.compose.ui.input.pointer.PointerInteropUtils_androidKt.toMotionEventScope-d-4ec7I(PointerInteropUtils.android.kt:35) at androidx.compose.ui.input.pointer.PointerInteropFilter$pointerInputFilter$1.dispatchToView(PointerInteropFilter.android.kt:294) at androidx.compose.ui.input.pointer.PointerInteropFilter$pointerInputFilter$1.onPointerEvent-H0pRuoY(PointerInteropFilter.android.kt:232) at androidx.compose.ui.node.BackwardsCompatNode.onPointerEvent-H0pRuoY(BackwardsCompatNode.kt:374) at androidx.compose.ui.input.pointer.Node.dispatchFinalEventPass(HitPathTracker.kt:330) at androidx.compose.ui.input.pointer.Node.dispatchFinalEventPass(HitPathTracker.kt:334) at androidx.compose.ui.input.pointer.Node.dispatchFinalEventPass(HitPathTracker.kt:334) at androidx.compose.ui.input.pointer.NodeParent.dispatchFinalEventPass(HitPathTracker.kt:202) at androidx.compose.ui.input.pointer.HitPathTracker.dispatchChanges(HitPathTracker.kt:108) at androidx.compose.ui.input.pointer.PointerInputEventProcessor.process-BIzXfog(PointerInputEventProcessor.kt:98) at androidx.compose.ui.platform.AndroidComposeView.sendMotionEvent-8iAsVTc(AndroidComposeView.android.kt:1361) at androidx.compose.ui.platform.AndroidComposeView.handleMotionEvent-8iAsVTc(AndroidComposeView.android.kt:1307) at androidx.compose.ui.platform.AndroidComposeView.dispatchTouchEvent(AndroidComposeView.android.kt:1246) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3167) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2832) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3167) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2832) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3167) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2832) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3167) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2832) at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:727) at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1984) at android.app.Activity.dispatchTouchEvent(Activity.java:4660) at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:676) at android.view.View.dispatchPointerEvent(View.java:15460) at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:7119) at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:6870) at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:6305) at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:6372) at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:6333) at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:6506) at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:6341) at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:6563) at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:6309) at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:6372) at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:6333) at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:6341) at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:6309) at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:9551) at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:9502) at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:9463) at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:9698) at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:295) at android.view.InputEventReceiver.nativeConsumeBatchedInputEvents(Native Method) at android.view.InputEventReceiver.consumeBatchedInputEvents(InputEventReceiver.java:259) at android.view.ViewRootImpl.doConsumeBatchedInput(ViewRootImpl.java:9636) at android.view.ViewRootImpl$ConsumeBatchedInputRunnable.run(ViewRootImpl.java:9789) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1480) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1488) at android.view.Choreographer.doCallbacks(Choreographer.java:1111) at android.view.Choreographer.doFrame(Choreographer.java:993) at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1463) at android.os.Handler.handleCallback(Handler.java:942) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loopOnce(Looper.java:223) at android.os.Looper.loop(Looper.java:324) at android.app.ActivityThread.main(ActivityThread.java:8421) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:582) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1061) Back traces ends.
Solved! Go to Solution.
ESRI offers native SDKs for many platforms including Android. The log messages that the Android app tells me it is using Compose UI, which is supported using the ArcGIS Maps SDK for Kotlin. I would recommend migrating to using this SDK for native Android ArcGIS development.
ESRI offers native SDKs for many platforms including Android. The log messages that the Android app tells me it is using Compose UI, which is supported using the ArcGIS Maps SDK for Kotlin. I would recommend migrating to using this SDK for native Android ArcGIS development.