如何解决在Android中设置相机对焦距离
在手动模式下,我的Xperia XA(Sony F3113)上的相机应用程序允许我使用滑块设置后置相机的焦距。 (请参见屏幕快照here。)
我可以通过任何方式查看或修改应用程序用于执行此操作的代码吗?
有什么方法可以在自己的应用程序中设置焦距(不自动对焦)?
谢谢!
注1:我认为Camera2 API在此手机上不是可选项。 (如果我错了,请纠正我。)
注2:我的问题(和最终意图)与this非常相似,尚未得到令人满意的答复。
解决方法
除非设备支持camera2功能MANUAL_SENSOR,否则没有标准方法可以进行手动对焦。如果支持该功能,则只需使用LENS_FOCUS_DISTANCE即可更改焦点。
如果未列出,则可能是制造商为聚焦距离控制添加了一些自定义控件;如果设备是LEGACY相机,则很有可能是自定义的android.hardware.Camera.Parameters
字符串。如果您知道控制值,则可以使用Parameters.set()进行调整。
您可以通过运行默认应用程序,调整手动对焦并在应用程序仍处于活动状态时,使用adb运行adb shell dumpsys media.camera
并查看当前的相机参数来为该特定设备弄清楚列出的值。注意,除了实际的焦距控制外,可能还需要调整多个设置(例如AF模式)。
当然,这仅适用于该特定设备;由于存在未记录的接口,因此它们可能会根据OEM,设备甚至操作系统更新而更改。因此,依赖它们非常脆弱。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。