Android 保存图片到相册

 1    /**
 2      * 保存图片到相册
 3      */
 4     public void saveImageToGallery(Bitmap mBitmap) {
 5         if (!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
 6 
 7             ToastUtils.showToast(CodeActivity.this, "sdcard未使用");
 8             return;
 9         }
10         // 首先保存图片
11         File appDir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM).getAbsoluteFile();
12         if (!appDir.exists()) {
13             appDir.mkdir();
14         }
15         String fileName = System.currentTimeMillis() + ".jpg";
16         File file = new File(appDir, fileName);
17         try {
18             FileOutputStream fos = new FileOutputStream(file);
19             mBitmap.compress(Bitmap.CompressFormat.JPEG, 100, fos);
20             fos.flush();
21             fos.close();
22         } catch (FileNotFoundException e) {
23             e.printStackTrace();
24             return;
25         } catch (IOException e) {
26             e.printStackTrace();
27             return;
28         }
29 
30         // 其次把文件插入到系统图库
31         try {
32             MediaStore.Images.Media.insertImage(getApplication().getContentResolver(), file.getAbsolutePath(), fileName, null);
33         } catch (FileNotFoundException e) {
34             e.printStackTrace();
35         } // 最后通知图库更新
36 
37         getApplication().sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, Uri.parse("file://" + "")));
38 
39 
40     }

 

posted @ 2019-04-16 14:34  monkey0928  阅读(5261)  评论(0编辑  收藏  举报