1、我會指令adb uninstall 先解除安裝我們有簽名的安裝包。
2、用開發模式在手機上運作我們的應用。
3、然後測試就把手機拿走了,就用應用管理器把我們的應用解除安裝了。
4、繼續裝我們的開發包,死活也裝不了。我拿到手機也沒有辦法。試了很久,差點就要root手機了,但是手機又不是我的,沒有辦法root。
5、網上提供此資料
http://xusaomaiss.javaeye.com/blog/393296
在反複安裝android apk的時候,有的時候可能會遇到adb install錯誤,内容是:Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]
這很可能是因為你在以前uninstall應用的時候,沒有做徹底,隻是簡單的rm /data/app/下面的apk檔案了,一個補救的辦法如下:
啟動模拟器,然後進入菜單
settings->applications->mange
applications-> select the application->select "unistall".
這樣就能徹底删除了,然後再重新安裝這個apk就沒問題了
另外一個辦法就是将/data/system/packages.xml中該應用相應的資訊删掉,重新開機模拟器再安裝即可,因為adb install後,會在packages.xml中添加相應的程式資訊。
然而,在這裡都不可以使用:
1、widget不在mange applications清單中;
2、/data/system/packages.xml中無這個app資訊,且修改麻煩
再找...
http://iame.javaeye.com/blog/391455
制作好apk後(必須簽名),通過adb install xx.apk後,
1)apk檔案放在了/data/app/目錄下
2)/data/system/packages.xml中增加了條記錄
3)如果使用到了資料庫,首次運作後/data/data下增加了個apk使用到的資料目錄
解除安裝方式有如下幾種:
1)優雅式:通過界面 settings-->applications-->manage applications-->找到應用-->application Info-->uninstall 就可以正常解除安裝應用了。
2)粗暴式 直接到/data/app目錄下删除apk
adb shell
cd /data/app
rm xxx.apk
不推薦這種方式,隻删除了apk,如果應用還有其他的目錄,如資料庫目錄/data/data/xxx/databases/并沒有清理幹淨,留有隐患。
3)隐藏式:
adb uninstall package-name (這個在adb的幫助文檔中沒有說明,但可以用)
什麼,不知道package-name?看看你的AndroidManifest.xml中有個必須的屬性就是package,它所指定的就是package-name。
PS. android中package和application不是一個東西,但也沒有看到清楚的解釋。能否這樣了解:
package是實體概念,application是運作期的邏輯概念?
OK,試試:
F:"publish>adb uninstall com.anrdroid.test
Success
成功删除,再裝:
[2009-06-07 02:48:45 - battery] Performing sync
[2009-06-07 02:48:45 - battery] Automatic Target Mode: using device 'HT843GZ03305'
[2009-06-07 02:48:45 - battery] Uploading battery.apk onto device 'HT843GZ03305'
[2009-06-07 02:48:45 - battery] Installing battery.apk...
[2009-06-07 02:48:49 - battery] Success!
[2009-06-07 02:48:49 - battery] "battery"bin"battery.apk installed on device
[2009-06-07 02:48:49 - battery] Done!
我試了很久,沒有解決。
我就用eclipse的代碼将應用重新跑一次,安裝成功,再将此應用解除安裝(用手機系統自帶的解除安裝),再重新裝有簽名的應用,OK.