Android 获取相机覆盖内的图像

Android 获取相机覆盖内的图像,android,android-camera,android-imageview,surfaceview,camera-overlay,Android,Android Camera,Android Imageview,Surfaceview,Camera Overlay,我的自定义相机上当前有一个相机覆盖图(Imageview)。我把一切都搞定了。现在只需要在覆盖层中获取图像。我该怎么做呢。做了很多研究,但没有找到有效的方法 另外,如果你给了我负面的观点,请说明原因 private Camera.PictureCallback mJPEGPictureCallback = new Camera.PictureCallback() { @Override public void onPictureTaken(byte[] data, Ca

我的自定义相机上当前有一个相机覆盖图(Imageview)。我把一切都搞定了。现在只需要在覆盖层中获取图像。我该怎么做呢。做了很多研究,但没有找到有效的方法

另外,如果你给了我负面的观点,请说明原因

    private Camera.PictureCallback mJPEGPictureCallback = new Camera.PictureCallback() {

    @Override
    public void onPictureTaken(byte[] data, Camera camera) {
        CameraConfigurationUtils.releaseCamera();
        ProcessImageAsyncTask processImageAsyncTask = new ProcessImageAsyncTask(CameraActivity.this);
        processImageAsyncTask.setTaskCompletedListener(new ProcessImageAsyncTask.OnImageProcessingCompletedInterface() {
            @Override
            public void onImageProcessComplete(Bitmap bitmap) {
                if (mProgressDialog != null && mProgressDialog.isShowing()) {
                    mProgressDialog.dismiss();
                }
                enablePreviewMode();
                bitmap = Bitmap.createBitmap(bitmap, transparentView.getHeight(), transparentView.getLeft(), transparentView.getWidth(), transparentView.getHeight());
                cameraPreviewImage.setImageBitmap(bitmap);
                File pictureFile = CameraImageUtils.getOutputMediaFile();
                if (pictureFile == null) {
                    Log.d(TAG, "Error creating media file, check storage permissions: ");
                    return;
                }
                try {
                    FileOutputStream fos = new FileOutputStream(pictureFile);
                    bitmap.compress(Bitmap.CompressFormat.JPEG, 70, fos);
                    fos.flush();
                    fos.close();


 Toast.makeText(getApplicationContext(), "Picture size in " + ((float) (pictureFile.length()) / (1024 * 1024)) + " mb", Toast.LENGTH_SHORT).show();
                    } catch (FileNotFoundException e) {
                        Log.d(TAG, "File not found: " + e.getMessage());
                    } catch (IOException e) {
                        Log.d(TAG, "Error accessing file: " + e.getMessage());
                    }
                }
            });
            processImageAsyncTask.execute(data);
        }
    };

请给我看一些相关的代码到目前为止你有没有尝试过什么?这个覆盖有多重要?(在一个好的UI/UX中思考)。我已经添加了代码我猜你正在合并这两幅图像,我认为上面给出的链接是好的,我建议你两种方法,首先遵循上面给出的链接是好的,但是如果它给你带来了例外,那么它显然意味着你需要缩小你的相机图像,然后再对其进行任何工作,在绘制相机预览之前,为什么不根据叠加图像视图设置相机预览大小,使其看起来就是这样,并让另一部分剪裁预览本身