调用需要API级别21(目前最小为17):android.hardware.camera2.CameraDevice.S



Android Studio错误。我有安卓4.4.2的智能手机,我不能安装新的。我该怎么办?

private CameraDevice.StateCallback mCameraDeviceStateCallback = new CameraDevice.StateCallback(){
    @Override
    public void onOpened(CameraDevice camera){
        mCameraDevice = camera;
    }
    @Override
    public void onDisconnected(CameraDevice camera){
        camera.close();
        mCameraDevice = null;
    }
    @Override
    public void onError(CameraDevice camera, int error){
        camera.close();
        mCameraDevice = null;
    }
};

严格来说,这不是解决这个问题的正确方法,但你仍然可以在新设备上使用旧相机,只需在相机启动时设置2-3秒延迟,就像这样:

final Handler handler = new Handler();
            handler.postDelayed(new Runnable() {
                @Override
                public void run() {
                    mCamera.startPreview();
                }
            }, 2000);

这在大多数情况下都可以,如果你真的需要支持旧于21和新于23的设备。

最新更新