当我调用mCamera = Camera.open()
时,它返回null,可能是什么导致了这个?我的设备是Nexus 7。
我已经在AndroidManifest.xml
中设置了权限:
<uses-permission android:name="android.permission.CAMERA" />
答案 0 :(得分:27)
想出来,
您需要致电Camera.open(0)
。
这只在NEXUS 7设备上有效且正常工作,因为它只有一个摄像头,因此仅在定位该设备时才有用。
答案 1 :(得分:5)
对于那些在Android 6.0+上测试应用的用户,请确保已实施Runtime Permission。 因为AndroidManifest文件中的简单权限是不够的。
答案 2 :(得分:1)
我按照以下步骤解决了这个问题。
打开“AVD Manager”并选择您正在使用的虚拟设备
单击“编辑”按钮
在“硬件”部分,选择“新建”并添加“配置面向后的相机”,然后单击“确定”。
在条目旁边的下拉菜单中,选择“webcam0”或与您要使用的相机对应的那个
停止AVD并重新开始。