'IllegalStateException: CameraDevice was already closed triggered by onImageAvailable() in Android Webview

With the latest Android Webview 98 and 99 we are sometimes getting this non-reproducible exception in the logs:

java.lang.IllegalStateException: CameraDevice was already closed
    at android.hardware.camera2.impl.CameraDeviceImpl.checkIfCameraClosedOrInError(CameraDeviceImpl.java:2236)
    at android.hardware.camera2.impl.CameraDeviceImpl.createCaptureRequest(CameraDeviceImpl.java:797)
    at Pu0.e(chromium-TrichromeWebViewGoogle.aab-stable-484407333:12)
    at Eu0.onImageAvailable(chromium-TrichromeWebViewGoogle.aab-stable-484407333:11)
    at android.media.ImageReader$ListenerHandler.handleMessage(ImageReader.java:812)
    at android.os.Handler.dispatchMessage(Handler.java:106)
    at android.os.Looper.loop(Looper.java:247)
    at android.os.HandlerThread.run(HandlerThread.java:67)

Any ideas how to fix?



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source