我需要从手机摄像头拍照来分析它,但我不需要在SurfaceView上显示内容(相机图像)。我可以使用没有SurfaceView支架的Camera类吗?一种方法是简单地隐藏SurfaceView但是有没有办法不使用它?
我试过这样但是它会抛出一个错误:takePicture失败
的onCreate:
mCamera = getCameraInstance(); //private Camera mCamera;
mCamera.startPreview();
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
mCamera.takePicture(null, null, mPicture);
}
});
照相机:
public static Camera getCameraInstance() {
Camera c = null;
try {
c = Camera.open(); // attempt to get a Camera instance
} catch (Exception e) {
e.printStackTrace();
}
return c; // returns null if camera is unavailable
}
private Camera.PictureCallback mPicture = new Camera.PictureCallback() {
@Override
public void onPictureTaken(byte[] data, Camera camera) {
System.out.println("CLICK");
}
};
答案 0 :(得分:0)
我通过在SurficeView上添加新视图来解决我的问题,因此没有看到surficeView。我花了很长时间寻找其他解决方案但没有成功。