1.查找图库数据库是否存在该图片
2.存在则更新图片信息
3.不存在则插入图片信息到数据库
4.通知图片更新1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25public static void savePicInfoToMediaStore(Context context,String originPath){
File file = new File(originPath);
ContentResolver contentResolver = context.getContentResolver();
ContentValues newValues = new ContentValues(6);
newValues.put(MediaStore.Images.Media.TITLE,
file.getName());
newValues.put(MediaStore.Images.Media.DISPLAY_NAME,
file.getName());
newValues.put(MediaStore.Images.Media.DATA, file.getPath());
newValues.put(MediaStore.Images.Media.DATE_MODIFIED,
System.currentTimeMillis() / 1000);
newValues.put(MediaStore.Images.Media.SIZE, file.length());
newValues.put(MediaStore.Images.Media.MIME_TYPE, "image/png");
int i = contentResolver.update(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,newValues,MediaStore.Images.Media.DATA + " =?",new String[]{originPath});
if(i == 0){//更新失败
LogUtils.e("更新失败" + i + "保存图片信息");
context.getContentResolver().insert(
MediaStore.Images.Media.EXTERNAL_CONTENT_URI, newValues);
}
// 最后通知图库更新
context.sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, Uri.parse(file.getParent())));
}