如何安装资源文件夹大小> 1GB而apk max size = 50 MB的android应用程序?

时间:2013-06-17 11:26:56

标签: java android file compression apk

我的资源文件夹包含一个大小> 1 GB

的子文件夹

我无法在sd卡大小= 8 GB

的中兴设备上安装我的应用程序

我将write/read permission添加到我的清单文件以及preferExternal installation

在相关问题中进行一些搜索后,我发现最大apk大小为50 MB

所以我应该减少我的应用程序资源文件

我读到我可以在没有资源的情况下安装我的应用程序,然后在

中删除它们

首先使用

任何人都可以解释更多这个想法或提出另一个想法

我不知道我是否有可能在Android应用程序中使用大文本文件

2 个答案:

答案 0 :(得分:2)

正确,APK的最大文件大小为50MB。要将应用程序扩展到50MB以上,您可以使用一个或两个扩展文件,每个文件最大为2GB。 Refer to the official documentation了解详情。

我还会问自己是否需要使用该应用程序的所有这些资产。在我下载1GB数据之前,应用程序必须非常好/提供很多价值。也许你可以从服务器上提供数据块并下载到外部存储器?

答案 1 :(得分:0)

如果您需要用于开发目的的数据;您可以在测试Android设备的外部SD卡上加载数据(即您测试应用程序的设备)。您可以通过代码访问这些文件:

File root = android.os.Environment.getExternalStorageDirectory();
File dir = new File (root.getAbsolutePath() + "/assets"+...);

root现在将保存sd卡的根目录; dir会为您提供您想要访问的任何文件的目录。您可以使用标准的Java File和FileReader对象来读/写这些文件。这应该用于开发目的。是的别忘了在清单文件中添加所需的权限:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

然而;坦率地说,要求应用程序的用户下载一个千兆字节的数据供您运行的应用程序不是一个好主意。相反,最好在外部服务器上托管这些文件,并通过互联网从android间接访问它们;每次应用程序运行。 有几种方法可以做到这一点。如果它的简单文本存储在数据库中,您可以使用php将其作为JSON编码的字符串发送;但由于它的大约1GB的数据我假设它可能是图像/视频而不是纯文本。这是一个简单的教程,可以帮助您从URL下载图像:http://www.androidhive.info/2012/07/android-loading-image-from-url-http/您可以尝试进一步研究