Trevor Draeseke
How will the calls to getMessage() and getAdditionalMessage() help us if we have no way of catching this exception?
This is completely outside our code. The FutureTask is spawned by the Runtime, not me. These things are reported by Crashlytics in the field.
I cannot share all my code. I hope that is not required to get help.
I get plenty of these reported through Crashlytics. I do not know how to reproduce them.
Only common step I can see is that an offline vector map is loaded (from vtpk).
Fatal Exception: com.esri.arcgisruntime.ArcGISRuntimeException: Invalid argument
at com.esri.arcgisruntime.internal.jni.CoreRequest.nativeGetCanceled(SourceFile)
at com.esri.arcgisruntime.internal.jni.CoreRequest.h(SourceFile:213)
at com.esri.arcgisruntime.internal.j.b$2.run(SourceFile:199)
at com.esri.arcgisruntime.internal.b.g.b(SourceFile:45)
at com.esri.arcgisruntime.internal.b.e.a(SourceFile:115)
at com.esri.arcgisruntime.internal.b.c.done(SourceFile:44)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:383)
at java.util.concurrent.FutureTask.set(FutureTask.java:234)
at java.util.concurrent.FutureTask.run(FutureTask.java:274)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Fatal Exception: com.esri.arcgisruntime.ArcGISRuntimeException: Invalid argument
at com.esri.arcgisruntime.internal.jni.CoreRequest.nativeHandleResponse(SourceFile)
at com.esri.arcgisruntime.internal.jni.CoreRequest.a(SourceFile:274)
at com.esri.arcgisruntime.internal.j.b$2.run(SourceFile:200)
at com.esri.arcgisruntime.internal.b.g.b(SourceFile:45)
at com.esri.arcgisruntime.internal.b.e.a(SourceFile:115)
at com.esri.arcgisruntime.internal.b.c.done(SourceFile:44)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:383)
at java.util.concurrent.FutureTask.set(FutureTask.java:234)
at java.util.concurrent.FutureTask.run(FutureTask.java:274)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Nathan