2014-05-12 86 views
0

我有一些奇怪的自动更新问题,无法找到它如何真正起作用的答案。我的Android应用在应用目录中创建了几个共享首选项和一个缓存文件。在安装新版本之前Android AutoUpdate是否会卸载?

当我对我的应用程序进行更新并自动在用户设备上更新时,更新机制是否实际上完全卸载旧应用程序,删除其共享首选项,缓存文件以及应用程序中创建的任何其他文件app目录?还是它使它们保持完好?

我希望它确实删除了所有内容,这样如果我在缓存文件设计中更改某些内容,我不必以编程方式确保新的应用程序不使用旧的缓存文件设计。

我很抱歉,如果这已被问/答,但无法找到此信息。

回答

1

存储在/data/data/your.package.name/中的数据将在更新过程中保留。 安装更新与从终端运行adb install -r myApp.apk基本相同。

换句话说,更新后您的所有共享首选项和数据库将继续存在。

1

在回答您的问题时,不,Android在升级应用程序时不会删除文件和首选项。否则,每当开发人员更新其应用程序时,都会丢失所有设置和数据。

(你是新到Android,对吧?)

1

我希望它实际上并删除一切,所以,如果我改变 东西在我的缓存文件的设计,我没有编程 确保新应用程序未使用旧的缓存文件设计。

为什么?更新的目的是用新版本替换apk,用户肯定不会放弃他们的设置。你应该做的是为你缓存版本,你可以用当前的代码缓存版本创建共享首选项,如果你在你的代码中修改它,那么在Application.onCreate中,你可以检查版本是否改变并删除缓存(如果是这种情况)。您也可以将旧的缓存格式转换为新的缓存格式。

相关问题