inaturalist/react-native-inat-camera

Illegal state exception crash

albullington opened this issue · 1 comments

Here's the only camera-related crash I'm seeing in the latest production build v2.2.0-39. There are currently 77 reports of this happening in the past week across all Android versions.


java.lang.IllegalStateException: 
  at android.hardware.camera2.impl.CameraDeviceImpl.checkIfCameraClosedOrInError (CameraDeviceImpl.java:2432)
  at android.hardware.camera2.impl.CameraDeviceImpl.createCaptureSessionInternal (CameraDeviceImpl.java:646)
  at android.hardware.camera2.impl.CameraDeviceImpl.createCaptureSession (CameraDeviceImpl.java:515)
  at org.inaturalist.inatcamera.ui.Camera2BasicFragment.createCameraPreviewSession (Camera2BasicFragment.java:788)
  at org.inaturalist.inatcamera.ui.Camera2BasicFragment.access$400 (Camera2BasicFragment.java:64)
  at org.inaturalist.inatcamera.ui.Camera2BasicFragment$2.onOpened (Camera2BasicFragment.java:172)
  at android.hardware.camera2.impl.CameraDeviceImpl$1.run (CameraDeviceImpl.java:148)
  at android.os.Handler.handleCallback (Handler.java:873)
  at android.os.Handler.dispatchMessage (Handler.java:99)
  at android.os.Looper.loop (Looper.java:214)
  at android.os.HandlerThread.run (HandlerThread.java:65)

This one is still happening in release v2.2.1-41, with about 60 users affected in the past 4 days.

And here are a few other camera-related crashes. They aren't affecting too many users so far, but still happening.


*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 0 >>> org.inaturalist.seek <<<

backtrace:
  #00  pc 0000000000037c64  /data/app/org.inaturalist.seek-1/lib/arm/libtensorflowlite_jni.so
  #01  pc 000000000004a617  /data/app/org.inaturalist.seek-1/lib/arm/libtensorflowlite_jni.so
  #02  pc 00000000000367fd  /data/app/org.inaturalist.seek-1/lib/arm/libtensorflowlite_jni.so
  #03  pc 00000000000bf4ab  /data/app/org.inaturalist.seek-1/lib/arm/libtensorflowlite_jni.so
  #04  pc 00000000000c136f  /data/app/org.inaturalist.seek-1/lib/arm/libtensorflowlite_jni.so
  #05  pc 00000000000080e3  /data/app/org.inaturalist.seek-1/lib/arm/libtensorflowlite_jni.so (Java_org_tensorflow_lite_NativeInterpreterWrapper_run+26)
  #06  pc 0000000000dcb8ff  /data/app/org.inaturalist.seek-1/oat/arm/base.odex
java.lang.IllegalStateException: 
  at android.hardware.camera2.impl.CameraDeviceImpl.checkIfCameraClosedOrInError (CameraDeviceImpl.java:1997)
  at android.hardware.camera2.impl.CameraDeviceImpl.submitCaptureRequest (CameraDeviceImpl.java:844)
  at android.hardware.camera2.impl.CameraDeviceImpl.setRepeatingRequest (CameraDeviceImpl.java:899)
  at android.hardware.camera2.impl.CameraCaptureSessionImpl.setRepeatingRequest (CameraCaptureSessionImpl.java:236)
  at org.inaturalist.inatcamera.ui.Camera2BasicFragment$6.onConfigured (Camera2BasicFragment.java:809)
  at java.lang.reflect.Method.invoke (Native Method)
  at android.hardware.camera2.dispatch.InvokeDispatcher.dispatch (InvokeDispatcher.java:39)
  at android.hardware.camera2.dispatch.HandlerDispatcher$1.run (HandlerDispatcher.java:65)
  at android.os.Handler.handleCallback (Handler.java:739)
  at android.os.Handler.dispatchMessage (Handler.java:95)
  at android.os.Looper.loop (Looper.java:148)
  at android.os.HandlerThread.run (HandlerThread.java:61)
java.lang.NumberFormatException: 
  at java.lang.Integer.parseInt (Integer.java:615)
  at java.lang.Integer.valueOf (Integer.java:801)
  at org.inaturalist.inatcamera.nativecamera.INatCameraView.nodeToMap (INatCameraView.java:498)
  at org.inaturalist.inatcamera.nativecamera.INatCameraView.predictionsToMap (INatCameraView.java:532)
  at org.inaturalist.inatcamera.nativecamera.INatCameraView.onTaxaDetected (INatCameraView.java:559)
  at org.inaturalist.inatcamera.ui.Camera2BasicFragment.classifyFrame (Camera2BasicFragment.java:889)
  at org.inaturalist.inatcamera.ui.Camera2BasicFragment.access$1200 (Camera2BasicFragment.java:64)
  at org.inaturalist.inatcamera.ui.Camera2BasicFragment$5.run (Camera2BasicFragment.java:764)
  at android.os.Handler.handleCallback (Handler.java:873)
  at android.os.Handler.dispatchMessage (Handler.java:99)
  at android.os.Looper.loop (Looper.java:214)
  at android.os.HandlerThread.run (HandlerThread.java:65)