首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >安卓:我如何检查一个设备是否实现了Camera2 api功能?

安卓:我如何检查一个设备是否实现了Camera2 api功能?
EN

Stack Overflow用户
提问于 2015-06-21 06:13:40
回答 7查看 46.5K关注 0票数 13

那么,我如何检查一个安卓设备是否实现了Camera2 api功能呢?camera2 api中有许多新特性,如手动控件。那么,我如何知道是否以编程方式实现了哪些Camera2 api特性?

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2015-06-21 16:54:08

实际上,检查API版本的21+是可行的。camera2 API (包括CameraManager )是系统的一部分,不依赖于当前的硬件。因此,您始终可以向CameraManager请求CameraDevice的列表,然后可以单独查询。

但是,我认为您实际上的意思是“如何知道我是否可以使用camera2 API手动设置摄影参数?”,这取决于您拥有的设备。这取决于您需要什么控件,但是您需要的信息可以通过获取REQUEST_AVAILABLE_CAPABILITIES 元数据字段来收集。提示:寻找MANUAL_SENSOR

票数 6
EN

Stack Overflow用户

发布于 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

下面是如何获得它的方法:

代码语言:javascript
运行
复制
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));
 }
票数 25
EN

Stack Overflow用户

发布于 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 (应用程序的代码也在那里可用,以防有人需要集成到他们自己的项目中)

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30961802

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档