Android 将相机预览保存为位图

Android 将相机预览保存为位图,android,canvas,surfaceview,android-camera,Android,Canvas,Surfaceview,Android Camera,我需要一点帮助让我的相机正常工作 我要做的是让用户拍摄一张照片,然后在另一个活动中用作视图的背景。重要的是不要有任何倾斜,理想情况下,图像将以尽可能高的分辨率填充整个背景 我花了很长时间试图让相机输出的图片正确定位,并与显示器保持一致。所以我花了一些时间来思考我到底需要做什么,我认为我根本不需要正常保存的图像 我想到的是,我需要一个曲面视图来显示预览,以及一些文本的覆盖和一个捕获按钮。当用户拍摄图片时,它应该自动对焦,然后我需要捕获屏幕覆盖下的预览到位图,以便在其他活动中使用 *我应该为预览扩展

我需要一点帮助让我的相机正常工作

我要做的是让用户拍摄一张照片,然后在另一个活动中用作视图的背景。重要的是不要有任何倾斜,理想情况下,图像将以尽可能高的分辨率填充整个背景

我花了很长时间试图让相机输出的图片正确定位,并与显示器保持一致。所以我花了一些时间来思考我到底需要做什么,我认为我根本不需要正常保存的图像

我想到的是,我需要一个曲面视图来显示预览,以及一些文本的覆盖和一个捕获按钮。当用户拍摄图片时,它应该自动对焦,然后我需要捕获屏幕覆盖下的预览到位图,以便在其他活动中使用

*我应该为预览扩展SurfaceView并将其添加到包含覆盖的XML布局中吗

*如何将SurfaceView的图像保存为位图

谢谢

马特,
一个基本的问题,请原谅我的天真,通过意图将内置摄像头用于Android不是更容易吗?这是可行的,我以前做过。

显然,没有很好的方法将预览帧的图像格式转换为jpeg格式,因此我最终选择了相机的大小,方法是查看每个相机支持的分辨率,并获得与最高分辨率的屏幕最接近的匹配


因为Copy.StError方法似乎什么都不做,所以如果我是画像模式,我只需在矩阵90之前旋转一个矩阵。

我确实考虑了这个问题,并且在我的应用程序中有一个选项来加载存储在图库中的图像。之所以不这样做,是因为我不需要额外的分辨率,而且我希望图像与屏幕完全一致。内置相机似乎也有问题的正确方向的图像,我可以通过一个自定义相机捆绑方向。如果我不能让我的相机活动正常工作,我可能不得不求助于使用内置的相机应用程序,但我更希望有一个适合我需要的应用程序。听起来你需要有人督促你完成发布,并在下一个版本中工作。只有我的2美分;嗨,马特,摄像机传感器最初在实际设备中旋转0、90、180或270度。要在任何设备中正确设置旋转,应检查旋转值,并根据该值旋转它们以匹配首选旋转。希望这有帮助。