19

I attempted to force uninstall in ADB, but failed:

$ adb shell pm uninstall -k org.openintents.filemanager
$ adb shell pm list packages -f | grep -i manager
package:/system/app/FileManager.apk=org.openintents.filemanager

What went wrong here? What can I do?

I used the internal application manager and there isn't an option to delete it.

migrated from stackoverflow.com Aug 12 '11 at 18:06

This question came from our site for professional and enthusiast programmers.

  • When manually deleting application from /system remember to delete their corresponding data folder in /data/data/«identifier» There is also a track of the previous apk signature in /data/system/packages.xml that can prevent a reinstall of a rebuilt package with a different key. – anddam May 2 '12 at 14:53
  • What did you mean by ~"system app"? – IgorGanapolsky Sep 25 '16 at 22:37
18

Well, since the FileManager.apk package resides in a /system/app/ directory it is a system app. So the general way to remove it is:

adb shell
su
mount -o rw,remount /system
rm -rf /system/app/FileManager.apk
rm -rf /data/data/org.openintents.filemanager
mount -o ro,remount /system
exit
exit
  • 1
    When I run mount -o ro,remount /system, I get an error: Device or resource busy – IgorGanapolsky Aug 1 '16 at 13:07
  • 1
    @IgorG. I was able to resolve that by answering a prompt on the actual device. – Alex B Sep 25 '16 at 1:23
  • @AlexB Actually, no prompt occurs. This is a custom bootlegged phone, I guess. – IgorGanapolsky Sep 25 '16 at 23:03
10

Edit: when I saw the comment to CommonsWare answer I did not realize it was the same as the asker... anyways, a little explanation may be useful for somebody.

As yourself commented, the easiest way to uninstall a system app is plainly to delete the .apk file. The adb install / adb uninstall commands are useful for regular apps, not system apps. Since this apk is located in /system/app, adb uninstall will not remove it.

You can use the command suggested (rm /system/app/YourApp.apk), but before the /system folder need to have write access. You will need to see how to remount /system in your specific device, try searchig for "android remount +rw /system" and your device).

Alternatively, you may use any app that can do both deletion and remounting and has root access, such as Root Explorer and Astro

  • thanks aleadam... plot thickens because the rm that i did removed the apk but, maybe, not the cache.. Im unable to install from the market .. that fails .. looks like i either have to clear the dalvik cache or just revert the entire ROM to a backup image... install at cmd line with adb ==> [INSTALL_FAILED_UPDATE_INCOMPATIBLE] ... unable to use market to download install ... get "installation error incompatible update" ... im on a custom rom and have a backup thats 2 weeks old and i may just revert to that. – Robert Rowntree Apr 10 '11 at 0:01
  • link what i should have done is in the 2nd post on this thread – Robert Rowntree Apr 10 '11 at 0:52
1

The 'Failure' problem has more to do with the adb shell appending a DOS line ending ^M (on CentOS Linux anyway). Put the list of applications to uninstall in a file and copy to the android device directly.

root@android:/root # dos2unix list-of-apps-to-uninstall.txt     
root@android:/root # for f in `cat list-of-apps-to-uninstall.txt` ; do echo $f; pm uninstall $f; done;