我想在背景上拍照,尝试了一切,但我不能。
这是我的代码:
public void getEmotion(Context context) {
CameraControls cameraControls = new CameraControls();
cameraControls.takePicture();
CameraControls类是:
public class CameraControls implements PictureCallback {
private Camera mCamera;
public CameraControls() {
try {
this.mCamera = Camera.open(1);
this.mCamera.startPreview();
} catch (Exception e) {
Log.e("Mycamera", "CAMERA ERROR");
e.printStackTrace();
}
}
public void takePicture() {
Log.i("Mycamera", "Taking picture");
// Clear up buffers to avoid mCamera.takePicture to be stuck because of a memory issue
mCamera.setPreviewCallback(null);
// PictureCallback is implemented by the current class
mCamera.takePicture(null, null, this);
}
// ---- >>> onPictureTaken --- NERVER CALLED <<< ---- //
@Override
public void onPictureTaken(byte[] data, Camera camera) {
Log.i("Mycamera", "onPictureTaken");
this.mCamera.release();
}
我已经在android清单上设置了摄像头权限,问题是从不调用onPictureTaken。如何正确开发?
谢谢!
答案 0 :(得分:0)
我不明白你的背景&#39;是什么意思。但是,如果您对自定义相机处理感兴趣,那么它涉及的内容比我从您的代码段中看到的要多得多。
您可以查看/可能抓取并修改我放在GitHub上的代码段。它非常符合我的需求,但如果你知道如何剪切,粘贴和删除,它可能会有用。
祝你好运