访问assets文件夹和SD卡中的文件有什么区别?

5
我正在开发一个应用程序,需要使用三种不同大小的文件(1mb、5mb、15mb)。我进行了搜索,发现我们可以将这些视频放在 assets 文件夹中,并使用这些视频。其次,我了解到我们可以将这些视频放在 assets 文件夹中,在安装时将所有视频移动到 SD 卡中。当尝试第二种方法时,由于文件大小较大而遇到了问题。所以,请问有人可以告诉我两种方法之间的区别,我应该使用哪个呢?感谢任何建议。
1个回答

5

文件大小超过1MB的文件放置在资产文件夹中,将无法从您的应用程序中读取(它会抛出异常)。

这是因为它们在构建过程中被压缩,因此当手机在使用时需要大量的资源解压缩它们。

如果资产文件压缩,系统必须将整个文件解压缩内存中。如果您有一个20MB的文件,则意味着您的应用程序将占用20MB的物理内存

我认为您可以将它们放置在原始文件夹中,这样它们就不会被压缩

编辑:

您可以将最多50MB大小的APK文件上传到Android市场,这是标准的,并且现在还支持更大的APK文件。请参见下面的参考链接:

Android Apps Break the 50MB Barrier

谢谢。


感谢Pratik的帮助。那么,有可能从raw文件夹中删除文件吗?如果我按照所述保留三个视频大小,则我的apk大小将约为30 MB,因此我认为上传应用程序不会有问题,但仍然想确认一下。 - CodingRat
1
@GauravSharma 是的,您可以将大小为30MB的文件上传到Google市场。不会有任何问题。而且无法从原始文件夹中删除文件。 - Pratik Sharma
1
@GauravSharma 看看我的编辑,我已经发布了,这将对你有所帮助。 - Pratik Sharma

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接