我想在安装时从文件中填充我的android应用程序的数据库,然后将其删除以减小应用程序的大小。这可能吗 ? 日Thnx
答案 0 :(得分:1)
1-如果您希望数据库在安装时必须具有某些默认数据,那么您应该向具有此默认数据的用户提供数据库版本。
2-回答你的问题: 您应该在文件中包含SQL INSERT语句。使用代码&读取此文件运行将插入数据的语句。例如,您可以在创建数据库时读取此文件。插入记录后删除该文件。
您能否详细说明您想要实现的目标?
答案 1 :(得分:1)
如果我理解正确,您希望在应用程序资产中捆绑数据库文件,将文件安装在databases /目录中,然后从资产中删除该文件。无法从资产中删除文件,因此简短的答案是否定的。
如果文件很大,您可能希望在应用程序启动时从文件共享中下载它。这只是一个可能或可能不适用于您的目的的建议。
编辑:
从您的澄清(该应用程序无法访问互联网)判断,您可以使用多种不同的技术来保持文件大小。拥有INSERT语句列表对于解析和插入数据库非常有效,但是如果数据库发生更改则缺乏灵活性,并且在大小方面会产生大量开销。如果您有一个简单的数据结构,则每行可以有一个值,或者CSV格式的数据文件。 最后,不要忘记您可以使用例如压缩数据。 ZIP,在启动应用程序时可以使用ZipInputStream读取。与往常一样,有必要权衡速度与记忆。
答案 2 :(得分:1)
请查看以下步骤,这是填充应用数据库的替代方法。
第1步: 创建一个GitHub Gist帐户。
第2步: 创建包含要填充的数据的文本文件并获取原始URL
For Instance:
string url = “https://gist.githubusercontent.com/YOUR_ACCOUNT_NAME/0df1fa45aa11753de0a85893448b22de/raw/YourData.txt”;
第3步: 通过在GET请求模式下调用WebService来从应用程序中检索文件内容。
第4步: 现在用收到的内容填充数据库。