AnsweredAssumed Answered

GeoView's dispose method crashes after migrating to 100.8

Question asked by nandkishoreg on Jul 9, 2020
Latest reply on Aug 5, 2020 by rajashekarette

We are seeing a below crash after upgrading to 100.8 ArcGIS:

 

07-08 17:21:55.821 2741 2797 I TextureView: RenderingThread - Disposing started
07-08 17:21:55.824 2741 2797 E AndroidRuntime: FATAL EXCEPTION: Rendering thread
07-08 17:21:55.824 2741 2797 E AndroidRuntime: Process: com.example.map, PID: 2741
07-08 17:21:55.824 2741 2797 E AndroidRuntime: com.esri.arcgisruntime.ArcGISRuntimeException: Null pointer: object cannot be null.
07-08 17:21:55.824 2741 2797 E AndroidRuntime: at com.esri.arcgisruntime.internal.jni.CoreGeoView.nativePause(Native Method)
07-08 17:21:55.824 2741 2797 E AndroidRuntime: at com.esri.arcgisruntime.internal.jni.CoreGeoView.a(SourceFile:575)
07-08 17:21:55.824 2741 2797 E AndroidRuntime: at com.esri.arcgisruntime.internal.h.b.g.c(SourceFile:1058)
07-08 17:21:55.824 2741 2797 E AndroidRuntime: at com.esri.arcgisruntime.mapping.view.GeoView$RenderingThread.b(SourceFile:1175)
07-08 17:21:55.824 2741 2797 E AndroidRuntime: at com.esri.arcgisruntime.mapping.view.GeoView$RenderingThread.lambda$BRrsZ2XB9Y4rOvLRx6U82gkIAIs(Unknown Source:0)
07-08 17:21:55.824 2741 2797 E AndroidRuntime: at com.esri.arcgisruntime.mapping.view.-$$Lambda$GeoView$RenderingThread$BRrsZ2XB9Y4rOvLRx6U82gkIAIs.run(Unknown Source:2)
07-08 17:21:55.824 2741 2797 E AndroidRuntime: at android.os.Handler.handleCallback(Handler.java:883)
07-08 17:21:55.824 2741 2797 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:100)
07-08 17:21:55.824 2741 2797 E AndroidRuntime: at android.os.Looper.loop(Looper.java:214)
07-08 17:21:55.824 2741 2797 E AndroidRuntime: at com.esri.arcgisruntime.mapping.view.GeoView$RenderingThread.run(SourceFile:1210)
07-08 17:21:55.827 1342 3651 W ActivityTaskManager: Force finishing activity com.example.map/com.example.mapping.ICEHandlingMappingActivity

 

This crash appears from our Activity's onDestroy() when we have called  MapView.dispose() (in turn calling the GeoView class's

RenderingThread's dispose() method)

As this exception occurs in a different thread, we are unable to catch this exception.  

 

Any ideas what causes this crash?

Outcomes