我想在安装时从文件中填充我的android应用程序的数据库,然后将其删除以减小应用程序的大小。 这可能吗 ? n

===============>>#1 票数:1

请找到以下步骤,这是填充应用程序数据库的另一种方法。

第1步:创建GitHub Gist帐户。

步骤2:使用要填充的数据创建一个文本文件,并获取原始URL

例如:

字符串url =“ https://gist.githubusercontent.com/YOUR_ACCOUNT_NAME/0df1fa45aa11753de0a85893448b22de/raw/YourData.txt ”;

步骤3:通过在GET请求模式下调用WebService从应用程序中检索文件内容。

步骤4:现在,用接收到的内容填充数据库。

===============>>#2 票数:1

1-如果您希望数据库在安装时必须具有一些默认数据,则应向用户提供该数据库的版本,该版本具有此默认数据。

2-回答您的问题:您应该在文件中包含SQL INSERT语句。 使用代码读取此文件并运行将插入数据的语句。 例如,您可以在创建数据库时读取此文件,并且在插入记录后删除该文件。

您能否提供更多详细信息,您实际上想要实现什么?

===============>>#3 票数:1 已采纳

如果我对您的理解正确,则希望将数据库文件捆绑在应用程序资产中,将文件安装在databases /目录中,然后从资产中删除文件。 无法从资产中删除文件,因此简短的回答是“否”。

如果文件很大,则可能需要在应用程序启动时从文件共享中下载文件。 这只是一个建议,可能会或可能不会适合您的目的。

编辑:

从您的澄清(该应用程序无法访问互联网)来看,您可以使用多种不同的技术来减小文件大小。 拥有INSERT语句列表对于解析和插入数据库非常有效,但是如果更改数据库则缺乏灵活性,并且在大小方面会产生大量开销。 如果您具有简单的数据结构,则每行可以有一个值,也可以是CSV格式的数据文件。 最后,不要忘记可以使用ZIP压缩数据,而在启动应用程序时可以使用ZipInputStream读取数据。 与往常一样,有必要权衡速度与内存。

  ask by Marouane Gazanayi translate from so

未解决问题?本站智能推荐:

1回复

在Android中创建SQlite数据库时应用程序冻结

我试图按一下按钮将两个字符串值保存到数据库中。 当我按下按钮时,我的应用程序冻结。 我使用ADB Shell来查看是否正在创建.db文件,并且它显示一条消息“找不到文件” 调试应用程序时显示以下日志: 这是我的DBHandler java文件: 这是活动Java类
1回复

如何在Android应用程序中包含Sqlite数据库?

我想在我的Android应用程序中包含一个相当大的Sqlite数据库。 我尝试遵循reigndesign.com教程,但是某些设备无法加载数据库。 dbopen()调用异常失败很多。 在模拟器或我拥有的任何设备中都不会发生这种情况,因此对我来说要查找它并不容易。 是否有适当的方法可以在每
1回复

如何在Android应用程序中更新SQLite数据库?

我正在使用Android Studio构建一个android应用程序。 我将数据存储在SQLite数据库中。 我可以毫无问题地对该数据库执行查询。 但是,我需要使用在线数据库来更新数据库。 为此,我从SFTP(与JSch的连接)中获取了该文件,并想用SFTP中的新文件替换旧文件(在应
3回复

复制Sqlite数据库的android应用程序

我正在尝试使用本教程在我的Android应用程序中使用自己创建的数据库http://www.reigndesign.com/blog/using-your-own-sqlite-database-in-android-applications/ 我的资产文件夹中的数据库已经工作了5个小时才
2回复

Cordova Android应用程序中的预填充sqlite数据库问题

我正在尝试使用Cordova创建'Offline Dictionary Android App 。 我已经使用SQLite database browser创建了sqlite数据库。 数据库文件是test.db ,它具有一个表test ,其中有两个字段'_id'是INTEGER PRIMAR
1回复

其他应用程序的Android Access SQLite数据库

我尝试访问另一个应用程序的数据库,我想从我的应用程序在该数据库上插入数据。 我在手机(有根)上对其进行了测试,但出现错误。 谁能帮我? 这是MySQLiteOpenHelper.java文件: package com.test; import java.util.HashMap;
1回复

Android Quiz应用程序与本地SQLite数据库

我正在开发一个Android测验应用程序。 我想将问题和其他数据存储在本地SQLite数据库中。 我该如何处理? 特别是当我想添加一些问题(记录到数据库)时,我该怎么办? 我该如何使具有发布的应用程序的设备将我的新问题输入本地SQLite数据库? 我知道一些有关Andr
3回复

选择数据库行Android应用程序SQLite

我已经在android应用中创建了一个数据库。 这是我创建它的方法。 DatabaseHelper.java: 在我的home.java中,我调用了数据库助手来检索特定的行。 但是该应用正在停止。 这是目录 任何帮助/建议将不胜感激! 谢谢!
6回复

检查我的Android应用程序的SQLite数据库?

我是Android的新手,我刚刚开始从我的应用程序创建一个SQLite数据库(我正在使用Eclpise和Android SDK以及模拟器,我在单独的设计器中创建了SQL代码然后只是粘贴它)。 在消除了一些初始错误之后,SQLiteOpenHelper-后代类初始化代码在没有任何异常的情况下运行
1回复

如何在Android应用程序中导入外部sqlite数据库进行登录?

我已经创建了一个登录布局,但是我需要登录ID必须是内置的,该ID是在sqlite数据库中从外部创建的,用于登录ID和密码。 我如何创建它,这怎么可能? 我已将数据库复制到Assets文件夹中并使用了databasehelper,但仍无法正常工作。 谁能帮我吗?