如何检测android手机是否有双背相机

胸怀万里世界, 放眼无限未来。这篇文章主要讲述如何检测android手机是否有双背相机相关的知识,希望能为你提供帮助。
【如何检测android手机是否有双背相机】如何检测android手机是否有双背相机
我试过了

CameraManager manager = (CameraManager) context.getSystemService(Context.CAMERA_SERVICE); try { for(String id: manager.getCameraIdList()) Log.e("dualtest", id); } catch (CameraAccessException e) { e.printStackTrace(); }

但它只给我2个0和1。
答案你可以使用Camera.getCameraInfo如下。如果你使用api lvl 9
List< Integer> camID = new ArrayList< Integer> (); for(int i=0; i< Camera.getNumberOfCameras(); i++){ CameraInfo cameraInfo = new CameraInfo(); Camera.getCameraInfo(i,cameraInfo); if(cameraInfo.facing==CameraInfo.CAMERA_FACING_BACK) { camID.add(i); break; } }

如果你使用的是api level 21,你可以使用Camera2 api
List< String> camID = new ArrayList< String> (); CameraManager manager = (CameraManager) getSystemService(Context.CAMERA_SERVICE); for(String cameraId:manager.getCameraIdList()){ CameraCharacteristics cameraCharacteristics = manager.getCameraCharacteristics(cameraId); Integer facing = cameraCharacteristics.get(CameraCharacteristics.LENS_FACING); if(facing==CameraMetadata.LENS_FACING_BACK) { camID.add(cameraId); break; } }

参考
https://developer.android.com/reference/android/hardware/camera2/CameraManager.html
https://developer.android.com/reference/android/hardware/Camera.html#getCameraInfo(int,%20android.hardware.Camera.CameraInfo)
另一答案这里只是个人意见,但我不认为这是可能的(虽然我没有任何证据)。通常,2个双摄像头本身非常不同:光圈,变焦,颜色等。它们可能不会自行运行,但在软件结合两者的输入时做得很好。但如果处理软件非常好,你甚至不需要双摄像头设置(使用谷歌的相机应用程序,这在这方面做得很好)。总而言之,这种双摄像头的制作方式有很多种,如果单个摄像头在某些设置上工作,在其他设备上则可能完全没用。这就是为什么我相信即使背面有2个摄像头,它们也被系统视为一个摄像头。此外,考虑到Android手机制造商的数量,为了开发统一的API,很难对齐所有这些。根据制造商的不同,他们可能会为您提供一些API,只能访问一台摄像头,但这只能在他们的手机上使用,直到谷歌没有切换到双摄像头设置,我不相信会有一个API提供此功能。
另一答案Nishant,我在Mi A1上测试了同样的东西,发现我只有两台摄像机。你能找到答案吗?
for(String camera_id : cameraManager.getCameraIdList()){ Log.d(TAG, "Available Cameras: id: " + camera_id + " and rear facing = " + (cameraManager.getCameraCharacteristics(camera_id).get(CameraCharacteristics.LENS_FACING) == CameraCharacteristics.LENS_FACING_BACK)); }

输出:
可用的相机:id:0和后方饰面= true
可用的摄像头:id:1,后面饰面= false
还发现了LG双摄像头访问的this link。如果有人可以帮助回答如何在Mi A1上启用第二个后置摄像头,将会很有帮助

    推荐阅读