我開發了一款適用於android的應用程序。當我第一次安裝它時,該應用程序工作。但是當我在源代碼中做一些更改時,我們不能在不從手機中刪除的情況下安裝它。我希望該應用程序應該在第二次安裝時更新。任何方案?如何以編程方式更新Android應用程序
注:我的應用程序由我不想刪除數據庫的所以想在現有的
我開發了一款適用於android的應用程序。當我第一次安裝它時,該應用程序工作。但是當我在源代碼中做一些更改時,我們不能在不從手機中刪除的情況下安裝它。我希望該應用程序應該在第二次安裝時更新。任何方案?如何以編程方式更新Android應用程序
注:我的應用程序由我不想刪除數據庫的所以想在現有的
在您的Android清單更改您的版本號碼到後續版本
的Android更新新的應用程序:的versionCode
android:versionCode - 一個整數值,表示應用程序代碼相對於其他版本的 的版本。值爲 整數,以便其他應用程序可以通過編程方式對其進行評估,例如 以檢查升級或降級關係。您可以將 的值設置爲您需要的任何整數,但是您應該確保 每個後續版本的應用程序使用更大的值。 系統不強制執行此行爲,但增加 連續版本的值是規範性的。通常情況下,你會釋放與一套的versionCode應用程序的 第一個版本爲1,那麼 單調每個版本增加值,而不管是否釋放 構成了或大或小的釋放。這意味着 android:versionCode值不一定與 用戶可見的應用程序發行版本有很強的 相似性(請參閱下面的android:versionName)。應用程序和發佈 服務不應將此版本值顯示給用戶。要替換舊... 你有什麼要使用Android的程序,我不知道,但
看到這個http://developer.android.com/tools/publishing/versioning.html
除非使用Google Play來更新apk,否則這不是必需的。 – Squonk
問題可能是因爲您的密鑰庫與導出應用程序有關。如果使用默認的Android密鑰庫導出您的應用程序,然後如果你改變了應用程序在另一臺PC上,並使用默認密鑰庫再次導出,其他PC上安裝相同的設備上,在Android會看到,你有2個相同應用程序,但具有不同的密鑰存儲。這就是爲什麼你需要先取消應用程序並重新安裝。
它不事關如果您使用的Android defualt密鑰存儲在兩個PC-S。他們仍然不是同一個密鑰庫。
一個解決方案是你創建一個密鑰庫例如。 ProjectKeystore,並在您的項目中創建文件夾密鑰庫。將密鑰庫放在該文件夾中,並且可能將文件與密鑰庫用戶名並傳遞。通過這一點,您可以在任何PC上導出應用程序時使用相同的密鑰存儲。
但是,如果你改變的版本代碼,那麼你就會被這個錯誤提示。因此,請嘗試查找密鑰庫 由於應用程序簽名不同,重新安裝失敗。 ExpenseTracker]您必須執行應用程序的完全卸載。
警告:這將刪除應用程序數據! ExpenseTracker]請在shell中執行'adb uninstall com.spundhan.expensetracker'。
雅男,即使我遇到了這個錯誤 – Deepak
我有類似的問題試圖偶爾安裝我的應用程序。爲了解決這個問題,我去了應用管理屏幕,並告訴程序停止運行,然後正確安裝我的更新。我認爲這與android處理程序生命週期的方式有關。當你退出一個程序時,它並不總是停止運行。如果有什麼錯誤,那麼android在更新它之前可能會遇到關閉程序的問題。
您是否嘗試過僅從選項中刪除應用程序緩存和數據?你堅持什麼樣的數據?你做什麼樣的改變? – Ostkontentitan
您是否試圖在發行版本上安裝調試版本?如果是這樣,你不能那樣做。您只能使用其他發行版本更新發行版本,或使用其他調試版本更新調試版本。 – Squonk
第二次安裝時會出現什麼錯誤? –