Подтвердить что ты не робот

Camera.open() возвращает значение null

Когда я вызываю mCamera = Camera.open(), он возвращает null, что может быть причиной этого? Мое устройство - Nexus 7.

У меня уже есть разрешения, установленные в моем AndroidManifest.xml:

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

Ответ 1

Выяснилось,

Вам нужно позвонить Camera.open(0).

ЭТО ТОЛЬКО ДЕЙСТВИТЕЛЬНО И РАБОТАЕТ НА устройстве NEXUS 7, поскольку оно имеет только одну камеру, поэтому полезно только при таргетинге на это устройство.

Ответ 2

Для тех, кто тестирует приложение на Android 6.0+, убедитесь, что вы внедрили Runtime Permission. Поскольку простого разрешения в вашем файле AndroidManifest недостаточно.

Ответ 3

Я решил эту проблему, выполнив следующие шаги.

  • Откройте "AVD Manager" и выберите виртуальное устройство, которое вы используете

  • Нажмите кнопку "Изменить" Click on edit button

  • В разделе "Оборудование" выберите "Создать" и добавьте "Настроить обратную сторону камеры" и нажмите "ОК".

  • В раскрывающемся списке рядом с записью выберите "webcam0" или тот, который соответствует той камере, которую вы хотите использовать. Select the camera you want to use

  • Остановите AVD и снова перезапустите.