4

我正在开发一款应用程序,它在android中下载图像文件并将其用作应用程序资源。我想将文件保存在目录中,以便用户无法将其视为图库中显示的媒体文件。我只需要知道我可以保存文件的特定目录,并且用户无法看到它。在android中保存文件,所以用户无法阅读

+0

该应用程序的私有存储区可能会在一定程度上满足该需求,前提是该设备未获得root用户权限,并且您的应用程序不会更改权限。 –

+0

但我有一个庞大的数字图像作为资源...那么我会怎么做?...有没有机会使用应用程序包目录来存储和满足我的需要? –

+0

@mostafa imran没有任何给你准备好的代码亲爱的巫婆一我你做这种类型我做得很好。只是尝试然后说我我帮你ü –

回答

1

Using the Internal Storage您可以直接在设备的内部存储器上保存文件。默认情况下,保存到内部存储文件仅对您的应用程序和其他应用程序不能访问它们(也可以在用户)。当用户卸载您的应用程序时,这些文件将被删除。

3

Android会自动扫描外部存储上的所有文件夹中的媒体文件。如果你不想在图库中显示图像文件,也许你可以添加一些扩展名,如“.myapp”,这种方式欺骗扫描仪。

+0

是的,@ChrisStratton,你是对的。 – TieDad

+0

对不起,我错过了你已经使用外部存储限定符 –

0

另一种方法是将图像作为BLOB保存在数据库中。
有了这个,你100%确定只有你的应用程序可以访问它。

+0

yap这是一个解决方案...但我不认为它是有效的庞大的图像列表... –

+0

其实这是不真实的。数据库文件不一定是私有的,但如果在应用程序的私有目录中创建,它们是默认的。 –

+0

@ChrisStratton,请详细说明。其他应用程序如何访问私人数据库。 –

1

只需简单地应用您自己的逻辑。 当你从互联网上读取文件是字节格式。 ,并在权利后,SD卡。

这次只是改变读取文件的一些字节,并将该字节存储在某个地方,比如共享首选项,静态varibale任何东西。当你读取文件并显示其他播放时,然后改变相同的字节并替换这个字节orignal.this call incrypt and decrept。 它的工作亲爱的我为图像文件做。

1

只需在要从MediaScanner中排除的目录中添加一个名为.nomedia的文件即可。