是否有可能在不消耗双倍数据库空间的情况下发布Android应用?



所以这是这个问题的后续问题(发布带有数据库的应用程序)

看着这个问题,我看到只有3种方法我能想到在Android中获得SQLite数据库。

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

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

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

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

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

APK文件是ZIP文件,是压缩的,所以"double"可能有些夸张。但是,它确实会消耗一些额外的磁盘空间。

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

如果你说的"复制"是指"复制",是的。SQLiteAssetHelper为您处理这个问题。

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

如果你打算通过Play Store进行发行,你就需要一个网站来营销和推广应用,在这种情况下,你可以在自己的网站上托管你的数据库。

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

如果你不打算分发应用程序,那么担心空间消耗是没有意义的,因为它只会影响到你自己。

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

如果你打算通过Play Store独家发行游戏,你可以看看扩展文件。您仍然需要下载逻辑,但有时Play Store会为您下载文件。

相关内容

最新更新