Android将图片保存到相册并及时看到
Android中将图片保存到SD卡中,相册里不会及时出现这张图片,因为没有及时更新其索引,一般需要开机几次。当然我们可以手动更新其索引。
1,首先将文件保存到SD卡中。
String filePath = "xxx"; //全路径
saveImgToSDcard(filePath);
2,增加Android 内部媒体索引。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | public boolean saveImgToGallery(String filePath) { boolean sdCardExist = Environment.getExternalStorageState().equals( android.os.Environment.MEDIA_MOUNTED); // 判断sd卡是否存在 if (!sdCardExist) return false ; try { ContentValues values = new ContentValues(); values.put( "datetaken" , new Date().toString()); values.put( "mime_type" , "image/jpg" ); values.put( "_data" , filePath); Application app = DoctorApplication.getInstance(); ContentResolver cr = app.getContentResolver(); cr.insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values); } catch (Exception e) { e.printStackTrace(); } return true ; } |
3,刷新filePath的上一级目录
1 | MediaScannerConnection.scanFile(MyLanJingCode. this , new String[] { Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM).getPath()+ "/" + filePath.getParentFile().getAbsolutePath() }, null , null ); |
这样就能及时在相册中看到增加的图片了。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步