我应该使用哪个 Android Camera API
Posted
技术标签:
【中文标题】我应该使用哪个 Android Camera API【英文标题】:Which Android Camera API should I use 【发布时间】:2019-10-23 09:44:18 【问题描述】:我需要实现应用程序中的相机行为,用户可以在其中拍摄 QR 码的照片,然后我将使用 Google Play 服务 API 来处理和解码 QR 码。
所以我需要做的就是拍张照片。
此外,我知道要部署此应用的确切设备型号。目前是两个设备,最终可能是三个设备模型(所有 API 21+)。
根据我的阅读,开发 Jetpack CameraX API 是为了简化特定于设备的代码。
如果我的目标只是实现此要求的最简单的代码...我应该考虑使用 Camera API、Camera2 API 还是 CameraX API?
【问题讨论】:
您不需要播放服务来解码二维码。 There are offline options,其中一些为您集成了相机逻辑。除此之外,在您的三个选项中,尝试使用 CameraX,或尝试现有的相机库,如 Fotoapparat 或 CameraKit-android。 通常情况下,“简单地拍一张照片”来照顾好二维码是不够的。 QR 库更喜欢将实时流从摄像头馈送到解码器,这样用户就无需单击“捕获”按钮。 【参考方案1】:实际上 CameraX 只是 Camera2 API 的包装器。阅读following article
你的情况很简单,拍一张照片就可以搞定很多
二维码阅读器
库,但如果您仍想开发拍照功能并且您的设备已超过 21 岁,那么请选择 CameraX,因为它会非常频繁地更新,您不必担心不同设备中的不同行为,就像在 @987654322 中解释的那样@
【讨论】:
以上是关于我应该使用哪个 Android Camera API的主要内容,如果未能解决你的问题,请参考以下文章
在使用后台服务的情况下,android camera2预览表面
如果我为 android.hardware.camera2.full 添加 <uses-feature> 我应该删除 android.hardware.camera
Android:如何检查设备是不是实现了 Camera2 api 功能?