活动/片段错误中的自定义摄像机 X(需要将'compileSdkVersion'设置为 32 或更高)



所以我一直在尝试使用CameraX在活动/片段中创建一个自定义相机。到目前为止,该系列相机(androidx.camera…)的最新版本是1.2.0-alpha02。所以我从1.1.0-beta01更新了它们(顺便说一下,它不工作,在bindToLifeCycle函数上抛出了一个AbstractMethodError

' cameraProviderFuture.addListener ({//用于将相机的生命周期绑定到生命周期所有者val cameraProvider: ProcessCameraProvider = cameraProviderFuture.get()

// Preview
val preview = Preview.Builder()
.build()
.also {
it.setSurfaceProvider(viewFinderBack.surfaceProvider)
}
// Select back camera as a default
val cameraSelector = CameraSelector.DEFAULT_BACK_CAMERA
try {
// Unbind use cases before rebinding
cameraProvider.unbindAll()
// Bind use cases to camera
// AbstractMethodError is thrown by bindToLifecycle
cameraProvider.bindToLifecycle(
this, cameraSelector, preview)
} catch(exc: Exception) {
Log.e(TAG, "Use case binding failed", exc)
}
}, ContextCompat.getMainExecutor(con!!))`) 

如果有人有解决这个问题的办法,我很乐意使用旧版本的相机。

无论如何,在更新版本后,我运行同步,最终由于以下原因导致同步失败…

依赖项'androidx.camera:camera-lifecycle:1.2.0-alpha02'需要'compileSdkVersion'设置为32或更高。编译目标Module ':app' is 'android-31'

在构建中。gradle你需要将compileSDK/targetSDK设置为32。如果你有这个设置,你可能也需要更新你的buildTools版本。

像这样,您可能需要更改它,因为这是KTS:
android {
compileSdk = 32
buildToolsVersion = "32.0.0"
compileSdkVersion = 32
}