Java, Android, camerax programming. Error: cannot find symbol. symbol: class Builder

Java, Android, camerax programming. Error: cannot find symbol. symbol: class Builder

我正在尝试使用来自 Android 的 camerax 库用 Android 智能手机拍照。
我正在关注他们的 tutorial to capture images。 首先我需要初始化 ImageCapturer:

ImageCapture imageCapture =
new ImageCapture.Builder()
    .setTargetRotation(view.getDisplay().getRotation())
    .build();

cameraProvider.bindToLifecycle(lifecycleOwner, cameraSelector, imageCapture, imageAnalysis, preview);

问题是出现错误消息,无法执行代码:

    ImageCapture imageCapture = new ImageCapture.Builder().setTargetRotation(view.getDisplay().getRotation()).build();
                                                ^
  symbol:   class Builder

我在 gradle 文件中包含了 camerax 的依赖项:

apply plugin: 'com.android.application'

repositories {
    jcenter()
}

android {
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    compileSdkVersion 28
    buildToolsVersion "29.0.2"
    defaultConfig {
        applicationId "org.pytorch.digitrecognizer"
        minSdkVersion 21
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            debuggable true
        }
    }
}

dependencies {
    def camerax_version = '1.0.0-alpha06'
    implementation "androidx.camera:camera-core:${camerax_version}"
    implementation "androidx.camera:camera-camera2:${camerax_version}"
    implementation 'androidx.appcompat:appcompat:1.1.0'
    implementation 'org.pytorch:pytorch_android:1.4.0'
    implementation 'org.pytorch:pytorch_android_torchvision:1.4.0'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
}

我不知道为什么它不识别 .builderI。希望有人能帮帮我^^

您使用的是 alpha06 版本的 camerax 核心工件,在 version07 的 camerax 核心中引入了使用用例构建器构建用例。对于 alpha06,你必须写:

PreviewConfig previewConfig = new PreviewConfig.Builder().build();
Preview preview = new Preview(previewConfig);

对于较新的版本(从 alpha07 开始),您可以使用用例的构建器来初始化用例。

Preview preview = new Preview.Builder().build();

仅供参考,您使用的文档使用的是 beta01 版本的 camerax 核心,您可能希望更新到该版本而不是使用 alpha06。