2019独角兽企业重金招聘Python工程师标准>>>

在应用的图集中,通常会给用户提供保存图片的功能,让用户可以将自己喜欢的图片保存到系统相册中.

这个功能其实很好做,系统提供了现成的API:

简单的来说就这一行代码:

MediaStore.Images.Media.insertImage(getContentResolver(), mBitmap, "", "");

这个方法的返回值及为插入图片的路径

String url = MediaStore.Images.Media.insertImage(getContentResolver(), mBitmap, "", "");

但是在很多机器(比如G7,G11)上调用之后,进入相册并看不到刚才保存的那张图片,需要将机器重启后在系统相册中才会显示出来,大大影响了用户体验

这是由于机器系统缓存的问题.需要我们在插入图片之后往刷新下相册环境:

这里有两种方法:

sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://"+ Environment.getExternalStorageDirectory())));

或者:

final MediaScannerConnection msc = new MediaScannerConnection(mContext, new MediaScannerConnectionClient() {
public void onMediaScannerConnected() {msc.scanFile("/sdcard/image.jpg", "image/jpeg");
}
public void onScanCompleted(String path, Uri uri) {msc.disconnect();
}
});

这里要注意的是,发送广播或者直接调用扫描整个SD卡,实际上效率会比较低,也会增加耗电量.

上面提到,插入图片的方法对应的返回值为图片保存的绝对路径. 因此我们只要获取该路径,发送广播扫描该路径即可.

sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://"+ Environment.getExternalStorageDirectory()+ picPath)));

转载于:https://my.oschina.net/yuhanxun/blog/152773

Android 保存图片到系统及相关问题的解决方案相关推荐

  1. android 6.0获取图片地址,Android应用开发Android 保存图片到系统相册(三星6.0有效)...

    Android   保存图片到系统相册(三星6.0有效).今天要做一个保存图片到系统图库的功能,自身能力较浅,所以只能搜索了但发现网上的方法有几处bug,所以自己总结一下防止以后忘掉也想和大家分享一下 ...

  2. android 系统相册 多远,【系统相册】Android 保存图片到系统相册

    保存完图片后,可以在内存设备的文件系统相册目录下看到对应图片(以小米手机为例,系统相册的路径为:/storage/emulated/0/DCIM/Camera).但是,使用系统图库无法马上看到该图片, ...

  3. Android保存图片到系统相册

    先说一下思路,我是这样做的,先保存一张图片到可写路径下,用cocos2d的节点截屏功能,保存之后就可以 保存Bitmap到本地指定路径下 ,然后通过广播,通知系统相册图库刷新数据. 先说如何节点截屏: ...

  4. Android 保存图片到系统相册(三星6.0有效)

    今天要做一个保存图片到系统图库的功能,自身能力较浅,所以只能搜索了但发现网上的方法有几处bug,所以自己总结一下防止以后忘掉也想和大家分享一下. 首页网上保存图片并插入系统图库的方法: // 首先保存 ...

  5. Android保存图片到系统图库

    原文->http://stormzhang.github.io/android/2014/07/24/android-save-image-to-gallery/ 最近有些用户反映保存图片之后在 ...

  6. [Android Pro] Android保存图片到系统图库

    http://stormzhang.github.io/android/2014/07/24/android-save-image-to-gallery/ http://blog.csdn.net/x ...

  7. android保存图片到系统相册及图库更新

    public static void saveImageToGallery(Context context, Bitmap bmp) { // 首先保存图片         File appDir = ...

  8. android保存图片至系统相册

    0. 写在前面 最近需要做这个功能,然后在网上找了下资料,这篇博文不错,写的比较全而且比较清楚,自己也试了,没问题,转载过来,下次还要用不用再找了! 转载自http://blog.csdn.net/x ...

  9. 直播视频app源码,保存图片到系统相册

    直播视频app源码,保存图片到系统相册相关的代码 public static void saveImageToGallery(Context context, Bitmap bmp) {// 首先保存 ...

最新文章

  1. 数据格式、类型系统与展示
  2. 【Linux入门到精通系列讲解】Ubuntu下使用gcc编译并运行C程序
  3. XML和HTML的不同点
  4. .net core razor ajax,.NET CORE Razor Pages Ajax 调用 C# 方法
  5. servlet为什么要别名呢_servlet --2
  6. STL map 内存改变,迭代器失效,_Isnil(_Ptr)和红黑树
  7. python 数据结构 基础
  8. Solr 5.3.0集成mmseg4j、tomcat部署、Solrj 5.3.0使用
  9. 找不org.apache.commons.lang3.builder.EqualsBuilder和commons-lang下载链接
  10. php多条件查询统计,PHP-----多条件查询
  11. 算法设计与分析(第2版)屈婉玲 刘田 张立昂 王捍贫编著 第二章课后习题答案
  12. 角色和武器Shader特效开发
  13. springboot通过date_histogram 按时间统计数据
  14. 银联权益信息API接口及管理平台解决方案相关介绍
  15. 多张图片怎么同时修改dpi?教你一键批量修改图片dpi
  16. java集成kettle 9.2.0开发
  17. P1551 亲戚(并查集)
  18. 根据身份证解析出生年月
  19. 项目上线后,接口报错:SELECT command denied to user ‘用户名’ @ localhost‘ for table ‘ ‘
  20. matlab标量数据,可视化标量三维体数据的方法

热门文章

  1. 2019 半导体领袖新年展望(一)| 半导体行业观察
  2. 卡耐基梅隆大学提出新型「自适应」技术,可提高「个性化神经机器翻译」质量...
  3. AI 综述专栏 | 超长综述让你走近深度人脸识别
  4. 人工智能的恶意用途:预测、预防和缓解
  5. 硬件巨头正在崛起,中国独占鳌头
  6. “32 位应用已死!”
  7. 李彦宏:正在发生的智能经济 4 大变革 | 赠书
  8. iPhone游戏编程教程一步步教你游戏开发
  9. 爱说说技术原理方案的定选思考过程(一)
  10. Java笔试面试题007