我想从相机拍摄图像然后将图像保存在SD卡文件夹中,但路径保存在SqLite数据库中,并且还以二进制格式保存图像。此外,当从数据库中读取时,然后在ImageView或GridView中显示图像。任何有关于此的资源或示例或教程链接。如果有人给我任何资源,或示例或教程链接。这对我很有帮助。
答案 0 :(得分:0)
您可以将任务拆分为三个独立的部分:
1. Take a picture from camera
2. Save it to a file and take the path
3. Store the path from point two in your database
第1部分和第2部分:
final int IMAGE_FROM_CAMERA = 0;
Intent takePicture = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(takePicture, IMAGE_FROM_CAMERA);
在onActivityResult()......
if (resultCode == RESULT_OK) {
Uri selectedImage = imageReturnedIntent.getData();
String path = getRealPathFromURI(selectedImage);
}
...
public String getRealPathFromURI(Uri contentUri) {
String path = null;
String[] proj = { MediaStore.MediaColumns.DATA };
Cursor cursor = getContentResolver().query(contentUri, proj, null,
null, null);
if (cursor.moveToFirst()) {
int column_index = cursor
.getColumnIndexOrThrow(MediaStore.MediaColumns.DATA);
path = cursor.getString(column_index);
}
cursor.close();
return path;
}
对于第3部分,只需在数据库中写入字符串path
相应的字段即可。开放很容易,因为你有路径,只需从路径打开一个流,做一些转换并获取你的图像。