我們已經安裝了Android應用程序1.0,並將其製作在專用ROM的/ system/app中。如何升級/系統/應用程序中的應用程序?
現在我們已經發布該應用的升級版本1.1,安裝後,版本在Android設置的應用列表中更改爲1.1。但是當我重新啓動系統時,錯過了更新後的版本,返回1.0。
如何解決此問題?有關它的任何詳細介紹?
謝謝。
我們已經安裝了Android應用程序1.0,並將其製作在專用ROM的/ system/app中。如何升級/系統/應用程序中的應用程序?
現在我們已經發布該應用的升級版本1.1,安裝後,版本在Android設置的應用列表中更改爲1.1。但是當我重新啓動系統時,錯過了更新後的版本,返回1.0。
如何解決此問題?有關它的任何詳細介紹?
謝謝。
也許你有你的應用程序安裝到/ data/app中不是/ system/app中
嘗試將此應用移動到/ system/app中
,因爲應用程序是在系統/應用程序,所以,你應該使用推送命令
adb root
adb remount
adb shell rm /system/app/your.apk
adb push your.apk /system/app
更新它。
也許你需要先刪除它。
通常,如果您將應用程序推送到系統/應用程序,然後將其安裝到數據/應用程序中,則應用程序系統/應用程序僅在重新啓動設備後才起作用。 如果您可以在重新啓動設備後檢查數據/應用程序中是否有應用程序。
adb shell ls /data/app
,如果你找到它,你可以刪除它,以確保您不具有相同的應用程序:
adb shell rm /data/app/your-1.apk
您可以使用此:
亞行外殼
蘇
安裝-o remount,rw/system
cat ApplicationName.apk> /system/app/ApplicationName.apk
chmod 644 ApplicationName.apk
重新啓動
據我所知pm安裝只更新用戶應用程序。 如果您正在從Eclipse或從其他IDE部署應用程序(就我所知,與下載安裝相同),該應用程序將位於data/app下。
的應用程序現在的位置是/data/app/com.package.name-1.apk
的部署,你可以做
亞行外殼
蘇
安裝鄰重新裝載,RW /系統後
貓/data/app/com.package.name-1.apk> /system/app/ApplicationName.apk
搭配chmod 644 /system/app/ApplicationName.apk
重新啓動,以使更改生效
Cat通常與複製或cp相同,但是當您從/ data/app /原始com.package.name-1中捕獲時。APK消失(我猜機器人自動處理這個不知何故)
您可以通過執行LS -al當在/數據/應用程序/文件夾
增加versionCode
更新您的應用程序之前進行測試。
實際上,最新版本的應用安裝在/ data/app中,當設備重新啓動時,設備將檢查舊應用(v1.0)是否應該更新。然而,根據scanPackageLI()的框架/基/服務/ JAVA/COM /安卓/服務器/ PackageManagerService.java
if (ps != null && !ps.codePath.equals(scanFile)) {
// The path has changed from what was last scanned... check the
// version of the new path against what we have stored to determine
// what to do.
if (pkg.mVersionCode < ps.versionCode) {
// The system package has been updated and the code path does not match
// Ignore entry. Skip it.
......
} else {
......
}
......
}
你可以找到,如果的versionCode是一樣的,舊的應用程序將不會更新。所以當你想更新舊應用程序時,你需要在你的應用程序中增加versionCode。 PS:用新的命令行替換舊的應用程序可以滿足你的需求,但我真的不認爲它是好的。
+1我不知道爲什麼這個答案是downvoted,但它是帶領提問者走向正確的方向。如果安裝在/ system/app中的應用程序已更新,則它將具有ApplicationInfo.FLAG_UPDATED_SYSTEM_APP,但是如果您有兩個apks,一個在/ system/app中,另一個在/ data/app中,並且它們具有相同的版本代碼,或者in/data/app版本號較低,Android會自動刪除/ data/app中的apk – Ben 2016-06-05 22:04:04
如何移動它?我用adb install來安裝它 – brucenan 2013-04-26 08:37:23