Кажется, что ваше устройство не поддерживает камеру (или заблокировано)

android opencv образцы и учебники работали нормально, и вдруг в один прекрасный день я получаю это для всех из них "Кажется, что ваше устройство не поддерживает камеру (или она заблокирована).Приложение будет закрыто", пожалуйста, помогите исправить

Я снова заново установил opencv и импортировал и создал новые эмуляторы, но проблема не устранена.

Ответ 1

Перейдите к настройкам вашего устройства → apps → ВАШИ APP → Разрешения → включите разрешение камеры.

Работал для меня..

Ответ 2

Проверьте разрешение камеры в AndroidManifest.xml.

<uses-permission android:name="android.permission.CAMERA"/>

    <uses-feature android:name="android.hardware.camera"/>
    <uses-feature android:name="android.hardware.camera.autofocus"/>
    <uses-feature android:name="android.hardware.camera.front"/>
    <uses-feature android:name="android.hardware.camera.front.autofocus"/>

Его работа для меня..

Ответ 3

Из Android Docs:

Начиная с Android 6.0 (уровень API 23), пользователи предоставляют разрешения для приложений, пока приложение работает, а не когда они устанавливают приложение.

Это означает, что на Android 23 или выше, помимо манифеста, вам также необходимо запросить разрешение на выполнение. В этом случае доступ к камере.

Для этого вы можете использовать следующий код:

// First check android version 
if (MyVersion > Build.VERSION_CODES.LOLLIPOP_MR1) {
//Check if permission is already granted
//thisActivity is your activity. (e.g.: MainActivity.this)
    if (ContextCompat.checkSelfPermission(thisActivity,
                    Manifest.permission.CAMERA)
            != PackageManager.PERMISSION_GRANTED) {

        // Give first an explanation, if needed.
        if (ActivityCompat.shouldShowRequestPermissionRationale(thisActivity,
                Manifest.permission.CAMERA)) {

            // Show an explanation to the user *asynchronously* -- don't block
            // this thread waiting for the user response! After the user
            // sees the explanation, try again to request the permission.

        } else {

            // No explanation needed, we can request the permission.

            ActivityCompat.requestPermissions(thisActivity,
                    new String[]{Manifest.permission.CAMERA},
                    1);
        }
    }
}

Вы также можете обрабатывать ответ запроса, как описано в docs.

Надеюсь, что это поможет!

Ответ 4

У меня была эта проблема, и я решил ее, убив любые другие приложения, которые использовали камеру. У меня были некоторые предыдущие учебники, которые все еще работают в фоновом режиме.

Ответ 5

Образцы должны работать, потому что они используют JavaCamera. Я получаю эту проблему, когда пытаюсь использовать Native. Похоже, что родной не работает для телефона. см. .

Мне нужно добавить, что в некоторых устройствах собственная камера openCV вообще не работает, ошибка 2359.