如何动态更新sqllite?

时间:2015-12-17 15:47:07

标签: android database sqlite

我为我的应用设置了app sql lite数据库。有没有办法在不重新发布应用程序的情况下更新数据库?例如,我想在sqlite数据库中添加一个新用户。我是否必须在我的应用程序上升级数据库版本并再次发布?远程数据库是动态android数据库的唯一解决方案吗?

3 个答案:

答案 0 :(得分:0)

如果我已经理解,你需要"部署"适用于您的应用的新数据库。你可以这样做,但你需要root访问权限,因为在其他情况下你没有权限。类似的东西:

  

adb push yourNewDB data / data / this.is.your.package / databases

然后输入shell:

  

adb shell

然后杀死你的应用程序:

  

PS   杀死pid

答案 1 :(得分:0)

您可以通过在线服务远程提供数据库更新。这可以为文件替换提供全新的DB文件,或者通过xml或json提供delta CRUD更新。但是在发布之前,您需要将更新方法编码到应用程序中。

答案 2 :(得分:0)

除非您的应用上集成了更新系统,否则没有重新发布应用程序的升级应用程序的简单方法。

最简单(和标准)的解决方案是重新发布和升级您的数据库版本号,然后调用onUpgrade()回调。您应该检查当前数据库并根据需要进行升级。按照您的示例,您只需检查该用户是否存在,如果不存在则创建它。