我正在开发一个Android应用程序,需要对总共30MB
左右的一些数据文件进行操作。我整理了一个测试,模拟器失败了OutOfDiskSpace
。即使数据量较小,设备上的调试也会失败。阅读谷歌群组后,似乎没有在任何地方说明应用程序大小限制,谷歌的任何人都没有详细说明。鉴于iPhone应用程序的大小超过100MB
,对Android应用程序施加如此小的限制似乎很奇怪,只是因为您拥有相对较少的可用应用程序存储空间(< { {1}})。
现在我的问题:
您使用什么技术来处理此限制?如果您的应用程序需要超过10MB,您是否将其放在Web服务器上并首次处理下载?如果是这样,您如何处理访问控制,以便只有您的应用才能获取数据?
答案 0 :(得分:12)
常用技术是在首次运行应用程序时下载数据并将数据保存到SD卡。这是因为内部存储器是目前Android状态的稀缺商品。没有正式支持在SD卡上安装应用程序,并且缺少HTC Dream和Sapphire的内存。
Here is a link访问官方android-developers群组中的一个帖子,谷歌Android工程师(Dianne Hackborn)用
回答这个问题现在最好的解决方案是我想下载你的大数据 安装。
答案 1 :(得分:0)
听起来你正试图将一些大文件加载到内存中 - 这是永远不可扩展的。使用流模型以块的形式处理文件,或者在需要整个内容时压缩内容。如果您从Web服务器/服务提供服务,则只需提供应用程序所需的部分,而不是整个文件。