1

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

我无法在 SD 卡大小 =8 GB 的 ZTE 设备上安装我的应用程序

我添加write/read permission到我的清单文件中preferExternal installation

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

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

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

首次使用

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

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

4

2 回答 2

2

正确,APK 的最大文件大小为 50MB。要将您的应用扩展至超过 50MB 的限制,您可以使用一个或两个扩展文件,每个文件最大为 2GB。有关这方面的详细信息,请参阅官方文档

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

于 2013-06-17T11:30:48.477 回答
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" />

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

于 2013-06-17T14:12:53.203 回答