2012-08-27 29 views
1

我有一个具有图片加载的应用程序。由于图片数量众多,整张照片会保存在SD卡中。主要问题是图片可在图库中找到。我想从图库中隐藏图片,但必须可用于我的应用程序。使图片仅适用于我的Android应用程序

我没有在文件名前加上“”来隐藏它 但图像没有在5月申请还显示!

任何人..帮助..请

感谢..

+0

我通过扩展认为Android的搜索图像。尝试通过像“.pix”这样的独特字词或您的应用的缩写名称为要隐藏的图像添加后缀。 – rahul

回答

2

库处理它所知道的所有媒体文件,所以如果你想让它远离你的财产你有两种解决方案。首先,将.nomedia文件添加到包含图像的文件夹中,并且图库应该跳过它(大多数图像查看器会信守.nomedia,但不能保证)。其他解决方案是使用一些自己的专有文件格式,所以Gallery或其他工具将无法处理它。我会电子书籍.nomedia如果这是足以解决方案

+0

[这里](http://stackoverflow.com/questions/10697276/android-nomedia-not-working-for-images)有人建议改变文件扩展名也应该工作得很好。 – harism

+0

@ harism:我确实使用了“.nomedia”,但图像没有显示在我的应用程序中! – TheReaper

+2

更改文件扩展名是一个弱点,因为不能保证媒体查看器甚至可以查看它(当然,这样做很简单,但是...)。许多观众尝试通过阅读文件标题来确定文件格式,并试图找出它是否已知。这就像期待* .apk的安全,因为它没有被命名为* .zip(而它实际上是普通的zip压缩文件)。因此'.nomedia'比将文件名更改为“神秘”更有意义 –

0

我想在这里你保存图像的事情,尽量把它们保存到应用程序缓存目录或文件目录的地方。 getCacheDir()您的活动:

你可以使用可以访问缓存目录。 和文件目录:getFilesDir()

这两个目录必须是不可见或访问任何其他应用程序期待您的应用程序,

+0

谢谢,我会试一试 – TheReaper

0

我使用的资产在我的应用程序来实现这一目标。

+0

我不能使用资产,因为我有大量的图片。这就是为什么我将图像保存到SD卡 – TheReaper

0

添加.nomedia文件转换成图像文件夹。重要的是,当你添加.nomedia文件时,该文件夹应该是空的。如果文件夹在添加'.nomedia'文件之前包含一些图像,图库将不会隐藏这些图像,并且会隐藏在'.nomedia'文件之后添加的图像。所以添加到图像文件夹的第一个文件应该是'.nomedia'。

希望DIS将帮助您

Thankx,

0

这行代码可以添加.nomedia文件目录,让您的图片从画廊

字符串NOMEDIA隐藏=” .nomedia “;

文件文件夹=新的文件(Environment.getExternalStorageDirectory()+ “/ MYDIR”); 如果(Folder.mkdir()){ nomediaFile =新的文件(Environment.getExternalStorageDirectory()+ “/ MYDIR /” + NOMEDIA);如果(!nomediaFile.exists()){ nomediaFile.createNewFile(); }}

相关问题