android – Camera.open() returns null-ThrowExceptions

Exception or error:

When I call mCamera = Camera.open() it returns null, what could be causing this? My device is the Nexus 7.

I already have the permissions set in my AndroidManifest.xml:

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

Figured it out,

You need to call Camera.open(0).

THIS IS ONLY VALID AND WORKING ON THE NEXUS 7 device, as it only has one camera, so is only useful if targeting that device only.

###

For those who’s testing an app on Android 6.0+, make sure that you have implemented Runtime Permission.
Because simple permission in your AndroidManifest file is not enough.

###

I solved this issue by following below steps.

  1. Open the “AVD Manager” and select the virtual device you are using

  2. Click on the “Edit” button
    Click on edit button

  3. In the “Hardware” section, select “New” and add “Configures camera facing back” and click Ok.

  4. In the dropdown next to the entry, select “webcam0” or the one corresponding to the camera you want to use
    Select the camera you want to use

  5. Stop the AVD and restart again.

Leave a Reply

Your email address will not be published. Required fields are marked *