【问题标题】:What happens to my Android app and database when a user updates through Market Place?当用户通过 Market Place 进行更新时,我的 Android 应用程序和数据库会发生什么情况?
【发布时间】:2011-05-16 18:37:45
【问题描述】:

好的,我目前在 MarketPlace 上有一个应用程序,今天我发布了它的第一个更新。我的应用程序使用的 SQLite 数据库会被更新覆盖,从而再次调用 onCreate 吗?或者它根本不会触及数据库? SharedPreferences 会发生什么变化?

对于看似简单的问题,我很抱歉,我已经在谷歌上搜索了一个小时,还没有找到任何关于当用户更新应用程序时包会发生什么的任何信息。它是否完全清除并重新安装?不知道。任何帮助将不胜感激。谢谢!

【问题讨论】:

    标签: android database sqlite sharedpreferences marketplace


    【解决方案1】:

    如果您在数据库适配器中使用 sqlite,它将检查此变量:

    private static final int DATABASE_VERSION;

    如果它与用户设备中安装的不同,它将尝试调用 sqlite 的覆盖 onUpgrade() 方法。

    【讨论】:

    • 嗯,有道理。我希望我不必弄乱onUpgrade。我想我可以删除现有表并重新创建它。还有一个问题,资产文件夹中的文件是否被完全替换了?非常感谢您的回答。
    • 您可以在删除所有表后在升级时调用 onCreate()。我认为它要么被完全替换,要么被同步。
    • 太棒了,再次感谢您的帮助,现在让我把我的 v1.1 变成 v1.1.1 :-)
    猜你喜欢
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多