我在这里有一段简单的代码,但由于某些原因,它不存储数据。我相信这是愚蠢的,但我似乎无法弄清楚。任何帮助将不胜感激。Android拍照并将其存储为字节数组
private byte[] picture;
public void takePicture(){
Camera camera = Camera.open();
Camera.Parameters parameters = camera.getParameters();
parameters.set("camera-id",2);
camera.setParameters(parameters);
parameters.set("gps-timestamp", "1233744883");
camera.setParameters(parameters);
Log.i("method", "in takePicture()");
camera.takePicture(null, rawCallback, null);
camera.release();
}
PictureCallback rawCallback = new PictureCallback() {
public void onPictureTaken(byte[] data, Camera camera) {
// TODO Do something with the image RAW data.
Log.i("rawcallback", "in rawcallback");
picture = data;
}
};
当我运行代码时,登录回调没有被调用,也没有“图片”保存“数据”。有什么想法吗?我正在试图用前置摄像头拍摄一张照片,我是否可以为此需要一些特别的东西,而我并没有这样做?
我也有这些权限
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
我把它改为camera.takePicture(NULL,rawCallback,NULL);但仍然没有运气。我确实有清单中的那些,我还评论说这是用于前置摄像头,如果这意味着我需要添加另一个使用功能/权限? – 4everAStudent 2011-03-16 22:28:12
用于访问字体摄像头的[API](http://developer.android.com/sdk/api_diff/9/changes/android.hardware.Camera.html)仅出现在Android 2.3中。在早期版本中,您应该使用供应商特定的技术。看看[这个工作解决方案]为Galaxy S(http://stackoverflow.com/questions/4241292/how-to-use-front-facing-camera-on-samsung-galaxy-s/4252857#4252857)。我希望它能帮助你。如果不尝试玩'parameters.setPreviewSize' – Idolon 2011-03-16 22:40:54