我正在發佈模式下構建Android應用程序。我第一次將它安裝在設備上時,它工作正常。但是,如果我從同一個源重建它,請使用相同的密鑰對其進行簽名,然後重新安裝,否則將失敗。我在日誌中看到以下錯誤:Android:「更新版本0比安裝版本舊」
W/InstallAppProgress(30456): Replacing package:com.mycompany.myapp
W/ActivityManager(26370): No content provider found for permission revoke: file:///storage/emulated/0/Download/MyApp-17.apk
W/PackageManager(26370): Can't install update of com.mycompany.myapp update version 0 is older than installed version 3
應用程序的版本代碼設置爲3,兩次構建它。它在哪裏得到更新是「版本0」的想法?
更新:我在我的清單文件中有這個:android:versionCode="@integer/app_version_code"
。我在res/values/strings.xml
中定義了<integer name="app_version_code">3</integer>
。
我很確定這用於工作,但現在它似乎並沒有。如果我將@integer引用替換爲硬編碼的「3」,它就可以工作。不應該@integer be supported?
你可以發佈你的清單嗎? – Emmanuel
你確定Manifest宣告了正確的versionCode? –
檢查清單後更新了帖子。 –