android设备众多,所以存在我们要去判断摄像头是否存在以及是否可用的情况,那么我们就可以去通过下面这个方法去判断,最重要的就是Camera的getNumberOfCameras()方法通过获取摄像头的个数,去准确判断设备能否进行拍照等操作。
private boolean hasCamera(){ boolean hasCamera=false; PackageManager pm=getActivity().getPackageManager(); hasCamera=pm.hasSystemFeature(PackageManager.FEATURE_CAMERA)&& pm.hasSystemFeature(PackageManager.FEATURE_CAMERA_FRONT)&& Build.VERSION.SDK_INT>Build.VERSION_CODES.GINGERBREAD&& Camera.getNumberOfCameras()>0; return hasCamera; }
当然也用通过直接去尝试打开摄像头,然后通过try,catch的方式去去判断是否可用
Camera mCamera = null; try { // TODO camera驱动挂掉,处理 mCamera = Camera.open(); } catch (Exception e) { UIUtils.showToast("摄像头不可用"+e.getMessage()); return; }finally { mCamera.release(); mCamera = null; }
在Android中,由于设备多样性,需要判断摄像头是否存在并可用。通常使用Camera的getNumberOfCameras()方法检查摄像头个数来确认设备是否支持拍照等功能。此外,还可以尝试直接打开摄像头,结合try-catch块捕获异常来判断摄像头是否可用。
1万+

被折叠的 条评论
为什么被折叠?



