zoukankan      html  css  js  c++  java
  • Android缓存图片,在系统图库却看不见。怎么做到的?答:新建“.nomedia”的文件即可。

    转载自:http://blog.csdn.net/spare_h/article/details/7466145

    开发项目需求:
    自己的应用中会缓存很多图片到本地,不想让系统图库扫描到自己的图片或者不想对用户浏览图片造成影响。

    方法:

    .nomedia文件作用:应用中的图片不被系统图库扫描

    “.nomedia”文件放在任何一个文件夹下都会把该文件夹下所有媒体文件(图片,mp3,视频)隐藏起来不会在系统图库,铃声中出现。

    新建.nomedia文件的方法:
    1.Windows系统的新建文件不能新建.nomedia文件

    新建方法:
    Java
    new File(dir, “.nomedia”).createNewFile();

    2. CMD命令行
    copy con .nomedia 回车
    然后此时屏幕上有一个光标在闪烁,说明等待你输入该文件内容,如果想建立空内容文件,这里就什么都不输入,这时按下ctrl+Z键再回车,就生成一个空文件。该文件拷贝到需要隐藏图片视频的文件夹中。
    3.Linux Shell
    vi .nomedia
    :wq

    ========================================================================

    Android项目可用以下代码实现新建.nomedia文件

    manifest.xml申请读写权限:

     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

    Java代码:

    File nomedia = new File( "xxx/xxx/" , ".nomedia");
        try {
            if (!nomedia.exists())
            nomedia.createNewFile();
            FileOutputStream nomediaFos = new FileOutputStream(nomedia);
            nomediaFos.flush();
            nomediaFos.close();
            } catch (IOException e) {
            Log.e("IOException", "exception in createNewFile() method");
            return;
        }

     ==========================================================================================

    有些特定软件会在缓存图片文件夹自动生成名为“.nomedia”的文件,屏蔽了其他软件的扫描。
    代表此文件夹里面的MP3、MP4、RMVB、JPEG等图片音频视频等媒体文件,所以系统图库看不到。
    但一些特殊软件如 快图、MX Player也可以在设置中取消辨认这些文件!

    
    
                              作者:xubuhang                出处:http://www.cnblogs.com/xubuhang/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 

     
查看全文
  • 相关阅读:
    关于抽象类
    封装.继承.多态
    构造方法
    String
    无参方法与有参方法
    类和对象
    使用分层实现业务处理(二)
    使用分层实现业务处理(一)
    序列化Serializable接口
    用JSP从数据库中读取图片并显示在网页上
  • 原文地址:https://www.cnblogs.com/xubuhang/p/4164208.html
  • Copyright © 2011-2022 走看看