我是靠谱客的博主 缓慢小蜜蜂,最近开发中收集的这篇文章主要介绍app保存图片到本地,打开相册却不显示,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

公司的app有保存图片的功能,但是打开相册却不显示,或者说不知道什么时候它显示了,看网上说是系统相册没有刷新。
百度一下,代码不少,

一般都是说先用 MediaStore.Images.Media.insertImage(getContext().getContentResolver(), file.getAbsolutePath(), file.getName(),file.getName());插入相册,然后再发广播更新,


private void scanPhoto(File file) {
try {
MediaStore.Images.Media.insertImage(.getContentResolver(), file.getAbsolutePath(), file.getName(),file.getName());//后两个参数好像没什么用,一个是给图片命名,一个是图片的描述
Intent mediaScanIntent = new Intent(
Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
Uri contentUri = Uri.fromFile(file);
mediaScanIntent.setData(contentUri);
sendBroadcast(mediaScanIntent);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}

可以点击此处,参考一下这位大神的,ANDROID保存图片到系统图库
但是上述方法,在app的选取图片功能(用的第三方模仿微信那个)中会出现两张重复的图片,但是手机相册没有重复。打开文件管理器发现一张是在Picature文件夹,一张是在自定义的目录里,不知道是我用的第三方选择图片的库的问题还是上述方法的问题,我想应该是这个方法的问题,自己下载的时候保存了一张,插入的时候又复制了一张。最后改为直接发广播,发现可行

 private void scanPhoto(File file) {
Intent mediaScanIntent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
Uri contentUri = Uri.fromFile(file);
mediaScanIntent.setData(contentUri);
getContext().sendBroadcast(mediaScanIntent);
}

最后

以上就是缓慢小蜜蜂为你收集整理的app保存图片到本地,打开相册却不显示的全部内容,希望文章能够帮你解决app保存图片到本地,打开相册却不显示所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(33)

评论列表共有 0 条评论

立即
投稿
返回
顶部