Камера Android2 Камера ДоступностьHandler вызывает камеру Доступно, затем камера Недоступна - PullRequest
1 голос
/ 26 марта 2019

Я пытаюсь настроить CameraKit api, чтобы он работал с Camera2 (это так близко , но не там), и у меня возникли проблемы с получением камерыотключено, особенно если действие закрыто, а затем снова открыто.

Чтобы попытаться предотвратить это, я добавил CameraAvailableListener, чтобы я мог попытаться убедиться, что камера не будет пойманаотсоединен.Это выглядит примерно так:

    cameraManager.registerAvailabilityCallback(object: CameraManager.AvailabilityCallback() {
        override fun onCameraAvailable(cameraDeviceId: String) {
            Log.i(TAG, "Camera available ( "+cameraDeviceId+" ) seeking "+cameraId)
            if ((cameraDeviceId == cameraId ) && errorState ) {
                errorState = false
            }
            super.onCameraAvailable(cameraDeviceId)
        }

        override fun onCameraUnavailable(cameraDeviceId: String) {
            Log.i(TAG, "Camera unavailable ( "+cameraDeviceId+" )  seeking "+cameraId+" already in error state? "+errorState)
            if ( cameraDeviceId == cameraId && !errorState ) {
                cameraOpen = false
                errorState = true
            }
            super.onCameraUnavailable(cameraDeviceId)
        }
    }, cameraHandler)

В моих журналах я вижу следующее:

2019-03-26 12:53:46.140 17945-18066/com.myphotoapp I/Camera2.kt: Camera available ( 0 ) seeking 0
2019-03-26 12:53:46.140 17945-18066/com.myphotoapp I/Camera2.kt: Camera available ( 1 ) seeking 0
2019-03-26 12:53:46.144 17945-18066/com.myphotoapp E/libc: Access denied finding property "persist.vendor.camera.privapp.list"
2019-03-26 12:53:46.150 17945-17959/com.myphotoapp E/libc: Access denied finding property "vendor.camera.aux.packagelist"
2019-03-26 12:53:46.151 17945-17959/com.myphotoapp E/libc: Access denied finding property "vendor.camera.aux.packagelist"
2019-03-26 12:53:46.166 17945-18066/com.myphotoapp I/Camera2.kt: Camera unavailable ( 0 )  seeking 0 already in error state? false
2019-03-26 12:53:46.167 17945-18066/com.myphotoapp I/Camera2.kt: Camera unavailable ( 0 )  seeking 0 already in error state? true

Теперь, если я игнорирую вызовы onCameraUnavailable, кажется, что он работает нормально, когда камерадоступен, но если они неинформативны, почему они вообще возникают, или это из-за сообщений, поступающих из libc?

Есть ли способ узнать, действительно ли камера доступна в этой ситуации, или мне просто нужно позвонить open и надеяться на лучшее?

...