您的位置:首页 > 移动开发 > Android开发

Android启用摄像头失败或者黑屏问题的几点原因

2016-05-30 18:35 766 查看
在Android开发中接触Camera的过程中,经常会碰到各种各样的问题,对于启用摄像头失败或者黑屏的情况,本人总结了一下几点原因,欢迎大家继续补充:

1.手机没有对应摄像头,例如手机可能只有两个摄像头,下标从0开始,Camera.open(2)打开的是第3个摄像头就会出问题

private void openCamera(int cameraFacing) throws RuntimeException {
releaseCamera();
Camera.CameraInfo info = new Camera.CameraInfo();
for (int i = 0; i < Camera.getNumberOfCameras(); i++) {
Camera.getCameraInfo(i, info);
if (info.facing == cameraFacing) {
mCamera = Camera.open(i); // 打开对应的摄像头,获取到camera实例
mIsOpened = true;
return;
}
}
}

2.应用没有对应权限或者对应权限没有打开。

在 AndroidManifest.xml 加上对应权限<uses-permission android:name="android.permission.CAMERA" />再检查你的应用对应的权限是否打开

3.代码中使用了手机不支持的预览尺寸

可以通过如下代码查看你的手机支持的预览尺寸有哪些(不同手机支持的预览大小不一样)List<Size> previewSizes = mCamera.getParameters().getSupportedPreviewSizes();
for (int i = 0; i < previewSizes.size(); i++) {
Size psize = previewSizes.get(i);
Log.i(TAG + "initCamera", "PreviewSize,width: " + psize.width + " height: " + psize.height);
}之后查看log就可以看到了

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: