2014-01-29 62 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文件。