2014-01-29 63 views
0

目前我正在开发我的PlayStore的第一个应用程序。现在我问自己当我将一个新版本的应用程序放入PlayStore时,旧资源如何替换或更新。 我在原始资源中有一个csv文件,每次(在Manifest文件中的版本代码发生更改时)都写入sqlite数据库。现在,如果我想将新数据添加到数据库,我想简单地将新行添加到原始文件夹中的csv文件,将新的apk文件加载到Playstore,然后将新行写入数据库。Android更新过程 - 资源被覆盖?

而这正是我不确定发生什么事情的地方:如果我的csv文件与以前版本具有相同的名称 - 旧版本会被覆盖吗?我会这么认为原始资源被打包到apk文件中...

回答

1

您的资源将被覆盖。 apk更新只是一个来自旧应用程序的unisntall并安装新应用程序,但保留应用程序数据(sharedpreferences +数据库)。如果使用sqlite将csv数据保存在应用程序数据库中,则可以使用新的csv更新数据库,但是原始文件肯定会被覆盖。

1

这就像你的APK中的任何其他文件。 APK本质上是一个ZIP存档。

Google Play使用Manifest中的版本代码来确定新近度 - 即“您提供APK文件的顺序是?”

但是,您的数据加载器需要处理两种情况 - 全新安装和更新。这不是由Google自动处理的。换句话说,仅仅因为您将数据添加到CSV文件,这并不意味着现有的安装将获得该数据。如果您正在从原始文件进行实时数据请求,则数据将来自新的CSV文件。