那么,我如何检查一个安卓设备是否实现了Camera2 api功能呢?camera2 api中有许多新特性,如手动控件。那么,我如何知道是否以编程方式实现了哪些Camera2 api特性?
发布于 2015-06-21 16:54:08
实际上,检查API版本的21+是可行的。camera2 API (包括CameraManager
)是系统的一部分,不依赖于当前的硬件。因此,您始终可以向CameraManager
请求CameraDevice
的列表,然后可以单独查询。
但是,我认为您实际上的意思是“如何知道我是否可以使用camera2 API手动设置摄影参数?”,这取决于您拥有的设备。这取决于您需要什么控件,但是您需要的信息可以通过获取REQUEST_AVAILABLE_CAPABILITIES
元数据字段来收集。提示:寻找MANUAL_SENSOR
。
发布于 2015-07-06 08:19:44
事实上,API21级别只支持camera2 api。但只有这张支票是不够的。有些设备具有API 21级,但只能部分支持摄像头2。要检查这一点,您应该检查CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL.的值它可以是满的,遗产或有限的。详细信息请查看此处:https://developer.android.com/reference/android/hardware/camera2/CameraCharacteristics.html
下面是如何获得它的方法:
CameraManager manager = (CameraManager) activity.getSystemService(Context.CAMERA_SERVICE);
for (String cameraId : manager.getCameraIdList()) {
CameraCharacteristics characteristics
= manager.getCameraCharacteristics(cameraId);
Log.d("Img", "INFO_SUPPORTED_HARDWARE_LEVEL " + characteristics.get(CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL));
}
发布于 2016-12-29 18:34:30
对于另一个项目,我也需要这样做,所以我编写了一个小应用程序,它可以探测所有的camera2功能,并显示哪些功能可以在电话中使用:https://play.google.com/store/apps/details?id=de.weis.camera2probe。
你可以在应用程序中用电子邮件发送这份报告。我列出了我在这里收到的所有报告:https://github.com/TobiasWeis/android-camera2probe/wiki (应用程序的代码也在那里可用,以防有人需要集成到他们自己的项目中)
https://stackoverflow.com/questions/30961802
复制相似问题