如何隐藏图库中的照片并将其存储在我的应用程序中

时间:2012-11-07 12:11:36

标签: android android-gallery android-image

我正在开发一个Android应用程序,它将从库中选择一些照片并隐藏它们,

我可以从图库中选择特定的图片并将其存储在我的应用中并从图库中删除,但是如果他在sdcard中打开我的应用文件夹,那么一个人可以看到这些图片,那么我如何存储它们,即使一个人检查我的SD卡然后他应该无法检测到那些图片?

6 个答案:

答案 0 :(得分:11)

唯一安全的方法是自己加密图像数据并删除原始文件,只留下您的应用程序能够解密文件。

看看How to encrypt file from SD card using AES in Android?,了解如何做到这一点。

作为附加步骤,您还可以使用任意数量的其他答案来隐藏加密文件

答案 1 :(得分:7)

如果您想阻止图库显示应用程序文件夹中的图像,可以将名为.nomedia的文件放在该文件夹中。

来源:https://stackoverflow.com/a/6713863/450534

如果您想要隐藏该文件夹,例如文件管理器,请确保您的文件夹以期间(。)开头。例如,如果文件夹名为 myfolder ,则应将其创建为 .myfolder

来源:https://stackoverflow.com/a/5878270/450534

请注意,用户可以更改文件管理器的设置以显示隐藏的文件和文件夹。为此,没有解决方案。

答案 2 :(得分:2)

如果要隐藏文件夹,只需添加'。'作为文件夹名称的前缀。

答案 3 :(得分:1)

如果您想阻止图库显示应用程序文件夹中的图像,您可以将名为.nomedia的文件放在该文件夹中。

如果要隐藏文件夹,例如文件管理器,请确保文件夹以句点(。)开头。例如,如果文件夹名为myfolder,则应将其创建为.myfolder

File sdCard = Environment.getExternalStorageDirectory(); File dir = new File(sdCard.getAbsolutePath() + "/.myFolder" );

答案 4 :(得分:0)

看到这个。 更多的是执行一步。他们也隐藏数据和文件夹。

How to hide a folder in sdcard in android

答案 5 :(得分:0)

将您的SD卡文件夹路径用作

Environment.getExternalStorageDirectory().toString()+context.getPackageName+"//data//data//"+"(.folderName)";

这将为您的图像提供最大的安全性,如果用户手机未植根,则此路径从各个方面都是安全的。