首页 > 解决方案 > Android - Camera 2 API - 不会拍照

问题描述

我在 Android 中遇到了 Camera 2 API 的问题。我正在使用带有 Android Studio 的原生 android。相机在 TextureView 上没问题,但是当我尝试拍照时。它不起作用。我在 Camera 2 API 的官方 github 页面中关注了 Kotlin Basic Example 。当我打开相机活动时,我看到了 Logcat:

2018-11-14 09:37:59.963 4009-4009/sayurbox.com.oms E/libc: Access denied finding property "persist.camera.privapp.list"
2018-11-14 09:37:59.965 4009-4958/sayurbox.com.oms E/libc: Access denied finding property "camera.hal1.packagelist"
2018-11-14 09:38:00.166 4009-5002/sayurbox.com.oms E/libc: Access denied finding property "persist.camera.legacy_perf"
2018-11-14 09:38:01.971 4009-4957/sayurbox.com.oms E/RequestQueue: cancel failed: no repeating request exists.

标签: androidandroid-camera2

解决方案


我不知道您的确切情况,但在大多数情况下,如果没有在正确的线程中运行,就会发生这种情况。例如,只是运行mediaRecorder.start()会导致类似的错误,但将媒体记录器放在 UI 线程上运行可以解决此问题。

runOnUiThread(
        new Runnable() {
        @Override
        public void run() {
            mediaRecorder.start();
        }
});

但正如我所说,这是一次场景,可能还有其他场景也可以解决这个问题。

希望它会帮助某人。


推荐阅读