1

所以这是对这个问题的跟进(使用数据库发送应用程序

看着那个问题,我只看到了 3 种我能想到的在 Android 中获取 SQLite 数据库的方法。

  1. 在设计时将其放在 Asset 文件夹中,并在安装时将其复制到 data 文件夹中。
  2. 在安装时使用 SQLiteOpenHelper 生成它
  3. 安装应用程序后下载数据库。

所以在我看来,使用解决方案 1 和 2,您将消耗双倍的磁盘空间。解决方案 1 意味着复制数据库,解决方案 2 意味着拥有一个数据库,但还必须存储一个脚本来编写数据脚本(可能与数据库一样大)。

我会尝试解决方案 3,但我没有任何地方可以放置可以从网络上自由访问的数据库,而且我是 Android 新手,我真的不知道如何(可能在几周后)。

所以只是想知道,除非我使用解决方案 3,否则任何在安装时需要数据库的 android 应用程序需要的初始空间是初始填充数据的两倍,这是真的吗?有没有其他解决方案来解决这个问题?

4

1 回答 1

4

所以在我看来,使用解决方案 1 和 2,您将消耗双倍的磁盘空间。

APK 文件是一个 ZIP 文件,已压缩,因此“double”可能夸大了这种情况。但是,是的,它会消耗一些额外的磁盘空间。

解决方案1意味着复制数据库

如果“复制”是指“复制”,是的。SQLiteAssetHelper为你处理这个。

我会尝试解决方案 3,但我没有任何地方可以放置可以从网络自由访问的数据库

如果您计划通过 Play 商店进行分发,则需要一个网站来营销和推广应用程序,在这种情况下,您可以在自己的网站上托管数据库。

如果您计划通过自己的分发渠道进行分发,则需要一个网站来托管 APK 本身以供下载,在这种情况下,您也可以在那里托管数据库。

如果您不打算分发该应用程序,则不必担心空间消耗,因为它只会影响您。

有没有其他解决方案来解决这个问题?

如果您计划通过 Play 商店独家分发,您可以查看扩展文件。您仍然需要下载逻辑,但有时 Play 商店会为您下载文件。

于 2013-04-29T13:33:55.110 回答