错误Android Mobile Vision用于条形码扫描

bob*_* j. 2 android barcode-scanner google-play-services

我正在尝试在此链接中实现本教程的第二部分:

http://code.tutsplus.com/tutorials/reading-qr-codes-using-the-mobile-vision-api--cms-24680

我收到错误:

BarcodeDetector has private access at..

错误图像在这里

知道为什么吗?

public class ScanActivity extends Activity {
SurfaceView cameraView;
TextView barCodeInfo;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_scan);
        cameraView = (SurfaceView) findViewById(R.id.camera_view);
        barCodeInfo = (TextView) findViewById(R.id.code_info);

        BarcodeDetector  barcodeDetector = new BarcodeDetector().Builder(this).setBarcodeFormats(Barcode.QR_CODE)
                .build();
    }
}
Run Code Online (Sandbox Code Playgroud)

Luc*_*llo 6

问题是您正在尝试访问BarcodeDetector,其构造函数是私有的BarcodeDetector().BarcodeDetector使用Builder Pattern.

"Builder模式使用简单的对象并使用一步一步的方法构建一个复杂的对象." http://www.tutorialspoint.com/design_pattern/builder_pattern.htm

所以改为下面的代码:

BarcodeDetector  barcodeDetector = new BarcodeDetector.Builder(this).setBarcodeFormats(Barcode.QR_CODE)
            .build();
Run Code Online (Sandbox Code Playgroud)