Android 插入图片到媒体库_蹒跚走路的程序猿的博客-程序员宝宝

技术标签: Android  

  今天介绍一下在Android中怎么插入图片到媒体库,下面看代码:

final String titleName =Function.md5(imageUri.toLowerCase())
      +".png";
    OutputStreamfOut = null;
    try{
     Filefile = new File(MainApp.cacheDir, titleName);
     if(!file.exists()) {
      fOut= new FileOutputStream(file);

      loadedImage.compress(Bitmap.CompressFormat.JPEG,100,
        fOut);
      fOut.flush();
      fOut.close();
      MediaStore.Images.Media.insertImage(
        getContentResolver(),file.getAbsolutePath(),
        file.getName(),file.getName());
      Toast.makeText(GalleryActivity.this,"保存成功!",
        Toast.LENGTH_SHORT).show();
     }else {
      Toast.makeText(GalleryActivity.this,"已经保存!",
        Toast.LENGTH_SHORT).show();
     }
    }catch (FileNotFoundException e) {
     e.printStackTrace();
    }catch (IOException e) {
     e.printStackTrace();
    }

  上面代码的功能是创建一个文件夹保存图片并且把图片插入到媒体库里。在看一种方式:

final String titleName =Function.md5(imageUri.toLowerCase())
      +".png";
    ContentValuesvalues = new ContentValues();
    values.put(Media.DISPLAY_NAME,titleName);
    values.put(Media.DESCRIPTION,titleName);
    values.put(Media.MIME_TYPE,"image/jpeg");
    Uriuri = getContentResolver().insert(
      Media.EXTERNAL_CONTENT_URI,values);

    OutputStreamfOut = null;
    try{
     fOut= getContentResolver().openOutputStream(uri);
     loadedImage.compress(Bitmap.CompressFormat.JPEG,100, fOut);
     fOut.flush();
     fOut.close();
     Toast.makeText(GalleryActivity.this,"保存成功!",
       Toast.LENGTH_SHORT).show();
    }catch (FileNotFoundException e) {
     e.printStackTrace();
    }catch (IOException e) {
     e.printStackTrace();
    }

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/panhongjin/article/details/12501655

智能推荐

我总结了24家大厂100份面试题,腾讯团队实力打造flutter入门教程,含BATJM大厂_安卓小希的博客-程序员宝宝

前言前面一篇文章分享了最近整理的大家伙的面试经历总结,有兴趣可以去翻看一下。这位去百度面试的小A同学的面试经历很有趣,因为他拿到了offer但是并没有去,在了解原因后挺认同他的想法的。这种职业价值观我觉得对很多人非常有参考意义。1.要做一个尽可能流畅的ListView,你平时在工作中如何进行优化的?①Item布局,层级越少越好,使用hierarchyview工具查看优化。②复用convertView③使用ViewHolder④item中有图片时,异步加载⑤快速滑动时,不加载图片⑥item中

Could not launch in profiling mode because no profilers are configured._微wx笑的博客-程序员宝宝

目前新版本的Eclipse在启动应用服务器的时候有一个新的选项:Start the server in profiling mode。   但是我在一开始点击这个按钮的时候,出现了错误提示信息: Could not launch in profiling mode because no profilers are configured.   经过一番搜索,发现要求安装TPTP(Test and P

html 5抽奖特效,利用HTML5实现Canvas大转盘抽奖特效_偃鼠的博客-程序员宝宝

特效描述:利用HTML5实现 Canvas 大转盘 抽奖特效。利用HTML5实现Canvas大转盘抽奖特效代码结构1. 引入JS2. HTML代码当前浏览器版本过低,请使用其他浏览器尝试var wheelSurf// 初始化装盘数据 正常情况下应该由后台返回var initData = {"success": true,"list": [{"id": 100,"name": "5000元京东卡",...

HTTP请求 下的post, get , 和图片下载(utils)_httputil下载文件 post body_远方_857的博客-程序员宝宝

HttpURLConnection 下的网络请求1.IsNet->网络判断->HttpAsync中发起网络请求前使用 2.HttpGetUtils->get请求工具类(发起请求获取服务器返回值)-> HttpAsync->doinbackground->耗时联网操作 3.HttpAsync->异步请求工具类->开启子线程耗时操作->网...

 cron 表达式详解和转换成中文_cron表达式转换_天狼1222的博客-程序员宝宝

cron 表达式详解和转换成中文1,cron表达式生成器在线cron表达式生成器:https://www.bejson.com/othertools/cron/2,cron表达式一,结构Cron表达式是一个表示时间周期的字符串。分为6或7个域,每一个域代表一个含义。 corn从左到右(用空格隔开)格式:{秒} {分} {时} {日} {月} {周} {年(可选)}(1) Seconds Minutes Hours DayofMonth Month DayofWee...

linux系统下的rz、sz详解_linux rz_风澍的博客-程序员宝宝

对于linux服务器来说,通常我们是通过一些ssh工具进行远程访问连接的,而对于经常使用它的人来说,少不了将文件上传下载到服务器。如何能够快速的同服务器进行文件的交互尤为重要。不然每次都打开单独的ssh客户端或者ftp很是浪费时间。今天,我们就来介绍一下linux系统下的rz、sz命令。运行命令rz、sz要比FTP容易很多,而且服务器不需要另开FTP服务即可完成。sz:将选定的文件发送(se...

随便推点

python中的关键字---3(内置函数)_weixin_30751947的博客-程序员宝宝

内置函数# 1 range(起始位置,终止位置,步长) # range(终止位置) # range(起始,终止位置) # range(起始,终止,步长) # range(5) [0,4] [0,5) # range(1,5) [1,4] [1,5) # range(1,10,2) [1,3,5,7,9] # range(0,10,2...

跳板机登录服务器脚本及命令制作_weixin_33816300的博客-程序员宝宝

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

hive的基本操作_hive -e用法_lkinga的博客-程序员宝宝

hive的安装在之前已经写了 地址:一.语法创建数据库语法: CREATE DATABASE|SCHEMA [IF NOT EXISTS] <database name>如: create database if not exists zzti_hive; hive> create database if not exists zzti_h...

HttpUtil_httputil 设置header_林深时雾起~的博客-程序员宝宝

Http常用调用方式:get 和 postget调用:public static String doGet(String url, Map<String, String> param) { // 创建Httpclient对象 CloseableHttpClient httpclient = HttpClients.createDefault(); String resultString = ""; CloseableHttpResponse response = n

两个暴牛的js加密函数 求解码办法_weixin_30706507的博客-程序员宝宝

eval(function(p,a,c,k,e,d){e=function(c){return(c<a?"":e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[...

jquery validate 失去焦点时移除错误提示_凡夫俗子Z的博客-程序员宝宝

红色区块为去除错误提示信息,淡蓝色区块为 怎样去除错误信息(自定义)蓝色区块为设置错误信息显示的位置$("#formMail").validate({ rules:{ phone :{ isMobile : true }, newPsw:{ minlength: 6 }, reNewPsw

推荐文章

热门文章

相关标签