所以这是对这个问题的跟进(Ship an application with a database)
看看这个问题,我只看到了3种在Android中获取SQLite数据库的方法。
所以在我看来,对于解决方案1和解决方案2,您将消耗双倍的磁盘空间。解决方案1意味着复制数据库,解决方案2意味着拥有一个数据库,但也必须存储脚本来编写数据(这可能与数据库一样大)。
我会尝试解决方案3,但我没有任何地方可以放置一个可以从网络上免费访问的数据库,而且我是Android的新手,而且我真的不知道如何(可能在几周内) )。
所以只是想知道,除非我使用解决方案3,否则在安装时需要数据库的任何Android应用程序需要两倍于初始填充数据的初始空间?有没有其他解决方案来解决这个问题?
答案 0 :(得分:4)
因此,在我看来,对于解决方案1和解决方案2,您将占用两倍的磁盘空间。
作为ZIP文件的APK文件被压缩,因此“双重”可能夸大了案例。但是,是的,它会占用一些额外的磁盘空间。
解决方案1意味着复制数据库
如果“复制”你的意思是“复制”,是的。 SQLiteAssetHelper
为您处理此问题。
我会尝试解决方案3,但我没有任何地方可以放置一个可以从网上免费访问的数据库
如果您计划通过Play商店进行分发,则需要一个网站才能推广和推广该应用,在这种情况下,您可以在自己的网站上托管数据库。
如果您计划通过自己的分销渠道进行分发,则需要一个网站才能托管APK本身以供下载,在这种情况下,您也可以在那里托管数据库。
如果您不打算发布应用程序,那么担心空间消耗几乎没有意义,因为它只会影响您。
还有其他解决办法解决这个问题吗?
如果您打算通过Play商店进行独家发布,可以查看expansion files。您仍然需要下载逻辑,但有时Play商店会为您下载该文件。