捕获后Camera API不会停止

时间:2017-02-09 19:06:11

标签: java android api camera

我有一个使用旧相机API的应用。在大多数设备上一切正常,但有些设备即使在捕获图像后也会继续预览。仍然会调用图片回调,但预览不会停止。我真的不想将图像数据转换为位图并显示它,因为它确实有一个左右的滞后并且看起来很糟糕。我想知道是否有任何解决方案,它不适用于那些设备吗?

我的捕获按钮调用以下方法

private void photoCapture()
{
    if (mCamera == null)
        return;
    toggleBar();
    mCamera.takePicture(null, null, mPicture);
    takenPicture = true;
}

这是我的回调

private Camera.PictureCallback mPicture = new Camera.PictureCallback() {
    @Override
    public void onPictureTaken(byte[] data, Camera camera) {
        imageData = data;
        Bitmap bMap = BitmapFactory.decodeByteArray(data, 0, data.length);
        if (currentCameraId == Camera.CameraInfo.CAMERA_FACING_FRONT) {
            frontFacing = true;
        }
    }
};

令人印象深刻的是,takePicture方法会自动停止预览?否?

由于

1 个答案:

答案 0 :(得分:0)

如果要显示曲面以预览相机,则应在希望预览停止时调用camera.stopPreview()。否则,预览将继续,直到视图被销毁。