java Android映像未存储在存储器中
我试图通过相机将新拍摄的图像存储在存储器中,然后将图像显示在imageview上。但是,图像不会被存储
我的代码:
private SurfaceView mSurfaceView;
private SurfaceHolder mSurfaceHolder;
private Camera mCamera;
......more code...
captureImage.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
mCamera.takePicture(null, null, new PictureCallback() {
@Override
public void onPictureTaken(byte[] data, Camera camera) {
File pictureFile;
pictureFile = new File(String.format("/sdcard/%d.jpg", System.currentTimeMillis()));
try {
FileOutputStream fos = new FileOutputStream(pictureFile);
fos.write(data);
fos.close();
}
catch (Exception e) {
Log.d("ERR",e.toString());
}
//Display
Uri uri = Uri.fromFile(pictureFile);
imageViewer.setImageURI(uri);
}
});
}
});
我的代码写和显示图像正确吗?我在存储器上看不到任何图像,imageview也不会被图像填充。我做错了什么
# 1 楼答案
创建要保存照片的文件夹。 指定创建文件的完整路径名
//在本例中
MyImages
是一个文件夹,您可以在其中保存照片# 2 楼答案
首先,你的应用程序清单是否包含写入SD卡的必要权限
其次,我不确定你是否有正确的SD卡路径The API docs suggest:
编辑:要使用URL显示图像,可以尝试:
# 3 楼答案
1-确保你拥有必要的权限
2.在手机上创建一个目录
3-此方法用于拍照和创建文件
4-创建文件并将其保存在文件夹中
5-将图片显示在imageView中,并保存在数据库中
我希望有帮助