Nativescript ML 套件 OCR 文本识别在恢复 sdk < 23 时崩溃

Nativescript ML kit OCR Text recognition crashes on resume sdk < 23

在 Nativescript 中使用 ML-kit 文本识别来识别 sdk 小于 23 的设备,当我暂停应用程序并恢复它时出现错误:

System.err: Caused by: java.lang.RuntimeException: Camera initialization failed because the camera device was already opened(-16)

在 sdk >= 23 中,它似乎工作正常,但我的想法是让它在所有设备上工作(我的客户端设备有 android 5.5,所以 sdk < 23)。我正在实时使用插件:

<FirebaseMLKitTextRecognition:MLKitTextRecognition
                id="ocrCam"
                class="ocrCam"
                width="100%"
                height="50%"
                processEveryNthFrame="3"
                preferFrontCamera="false"
                torchOn="{{ lightOn }}"
                pause="{{ pauseOCR }}"
                scanResult="onTextRecognitionResult" />

我读了一些关于权限的文章,比如旧版本不需要它们,但新版本需要它们,当请求它们时它会崩溃。但是这个问题被 "min sdk 23" 关闭了。

有什么方法可以控制暂停时崩溃或破坏 xml 元素吗?

尝试在应用程序的暂停事件中释放相机/activity。

// Where ocrCam should be reference to MLKitTextRecognition
ocrCam.camera.release();