17

我当前项目的一部分是从 URL 下载图像,然后保存到 SDCard。但问题是 sdcard 中保存的所有图像都显示在 android 图库页面中。我想要的是“我不希望所有保存在 android 画廊中的图像。

4

4 回答 4

36
  1. 添加“.nomedia”文件。不工作?尝试第二个选项。

  2. 将文件保存到以“.”开头的文件夹中,例如,/sdcard/.myimages/

于 2013-07-23T02:32:01.540 回答
10

您可以使用以下代码创建 .nomedia 文件:
String NOMEDIA=".nomedia";

File Folder = new File(Environment.getExternalStorageDirectory() + "/mydir");
   if(Folder.mkdir()) { 
      nomediaFile = new File(Environment.getExternalStorageDirectory() + "/mydir/"+ NOMEDIA);
      if(!nomediaFile.exists()){
          nomediaFile.createNewFile();
      }
   }
于 2013-07-23T03:52:23.240 回答
1

我找到了一个简单的方法(我想是的)。

在“Android”文件夹(存在数据和 obb 文件夹)中创建一个文件夹,并将您的媒体(图片、视频等)放入您创建的文件夹中。

图库应用程序会忽略该“Android”文件夹。简单的 :-)

于 2015-06-07T20:00:08.173 回答
1

这么晚了,我知道其他答案是完整的,但我认为放置 .nomedia 文件会使该特定文件夹中的所有图片隐藏:

只需以编程方式更改图像文件的扩展名,这样画廊就无法将其检测为图像。例如,如果您的图像是“pic1.jpg”,则将其重命名为“pic1.aaa”;当你想再次显示它时,再次重命名它

于 2016-03-31T13:22:10.960 回答