【问题标题】:Deploying large database with Android application使用 Android 应用程序部署大型数据库
【发布时间】:2010-02-11 16:45:11
【问题描述】:

我需要为需要访问大型 (~200MB) 数据库的 Android 设备编写应用程序。 最好的方法是什么?我可以将数据库粘贴在资产文件夹中吗?我已经阅读了适用于整个应用程序大小和单个资源的各种限制,尤其是在某些设备上...这些限制究竟是什么?

除了从外部服务器安装后下载之外,还有其他方法吗?

【问题讨论】:

    标签: android application-size


    【解决方案1】:

    G1 有 256MB 的内部存储空间供应用程序使用。即使在 Nexus One 上也只有 512MB,所以我认为任何人都不太可能希望单个应用程序占用如此高比例的存储空间,因此创建 200MB 以上的 .apk 文件是不切实际的。

    您的选择可能是:

    • 使数据库可以通过网络服务访问,这样您的应用就可以通过 Internet 连接查询它。
    • 根据需要逐位下载数据并将其缓存到 SD 卡上。
    • 在您的应用程序首次运行时将数据库下载到 SD 卡。

    我认为最后一个是最不可取的,因为 200MB 的下载需要很长时间,并且可能会占用某人每月 3G 数据流量的很大一部分。如果你打算这样做,它可能值得checking the status of the phone so you only download when there's a wi-fi connection

    【讨论】:

    • +1 表示网络服务建议。值得研究这种特殊情况。
    • 如果数据库应该是程序自带的,它可能要么是专门为用户准备的,要么是需要离线使用,所以Web服务可能是不可能的。不过,+1 可在首次运行时下载。不幸的是,这么大的东西只需要存储在 SD 卡上。
    • 最后一个选项是最好的,但是您不一定要使用手机下载它。您可以使用您的桌面,然后将整个数据库复制到 SD 卡。
    • 对于普通的安卓用户来说,按需下载数据是最好的选择。 +1
    • 我见过人们做的一件事是发布应用程序和单独的“数据”下载。基本上,用户下载数据 APK 并运行一次。然后它将自己提取到他们的 SDCard 中,允许用户释放他们的内部内存,但保持整个过程基于市场。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-07-29
    • 1970-01-01
    • 1970-01-01
    • 2015-08-08
    • 2013-10-29
    • 1970-01-01
    相关资源
    最近更新 更多