android - CameraX.unbindAll() 方法发生了什么?

标签 android android-camerax

我正在尝试遵循我在网络上找到的代码示例(Gabriel TannerRay WenderlichOfficial Introduction),但我通常在第一行就遇到困难:

    CameraX.unbindAll()

编译器提示 unbindAll() 是未解析的引用 (Kotlin)。来自 here 的示例代码是唯一不使用它的引用。但是所有其他示例代码都有它,包括 Google 自己的视频。

我什至无法在 Google 的文档中找到任何对此方法的引用。发生了什么?过去几个月的变化是否已经让所有这些激动人心的介绍都过时了?

我正在评估 CameraX,看看我们公司是否值得花时间将我们的代码从 Camera2 切换到 CameraX。如果事情变化如此之快, future 发生重大代码更改的可能性有多大?

最佳答案

CameraX 自去年首次推出以来经历了一些变化,这很正常,因为它仍处于 Alpha 阶段,API 表面在整个 alpha 版本中发生了一些变化,但自从它进入 Beta 阶段以来,它的公共(public) API 已经变得更加稳定。

回到您的问题,CameraX 中的绑定(bind)和解除绑定(bind)用例不再通过 CameraX 类完成,而是现在使用 ProcessCameraProvider.bindToLifecycle() 完成。将一个或多个用例绑定(bind)到生命周期,ProcessCameraProvider.unbind()取消绑定(bind)一个或多个用例,以及ProcessCameraProvider.unbindAll()解除绑定(bind)所有绑定(bind)的用例。

您用作引用的教程已经过时,甚至去年 google I/O 的视频也已过时,因为其中的代码 fragment 引用的是 CameraX 的第一个 alpha 版本。但是the codelab的链接您提到的几乎是最新的,它是由 Google 维护的官方 CameraX 代码实验室。你也可以看看the official documentation CameraX,它比您引用的教程更新。

关于android - CameraX.unbindAll() 方法发生了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63249242/

相关文章:

java - 如何将CameraX与PreviewView一起使用?

android - CameraX - 在纵向模式下锁定 Activity 时仅旋转预览

android - 在适配器的构造函数中膨胀 xml 文件

android - 图片已经关闭。 CameraX 分析仪

android - 添加 PACKAGE_USAGE_STATS [Android Lollipop] 时 Manifest.xml 出错

来自oncreate的android弹出窗口调用

android - 如何在android相机api上进行图像分析

android - CameraX 或 android.hardware.camera2 中 setPreviewCallbackWithBuffer 的模拟

android - 具有不同行布局的光标适配器

java - Android最佳实践: Bootstrap MainActivity with token