10

I like to try out lots of apps. Often a site like Lifehacker or Droidlife will feature several that are similar in functionality and I will install them all in order to compare features.

That leaves me with lots and lots of applications that I end up not wanting to keep. Unfortunately, I can only uninstall one at a time.

Is there an app or method that would allow me to uninstall a bunch at a time?

ale
  • 19,723
  • 34
  • 110
  • 159

6 Answers6

6

There are tons of apps that do batch uninstalling but here's a simple free one that I know works: Uninstaller Pro

A lot of the more full featured app managers also have a batch uninstall option. I like to consolidate functions into as few apps as I can. Now I use SmartBar which has a good app manager with batch uninstall.

Matt
  • 19,341
  • 11
  • 82
  • 125
  • I tried both smart bar and uninstaller pro, and get prompted to confirm for each app and after the uninstall, so to uninstall 50 apps I have to tap on 100 OK buttons. Is this SN android security feature / limitation? – Ivo Bosticky Feb 01 '12 at 00:51
2

Scripted via adb & pm (package manager):

If the SDK is installed and you like to use the commandline, that's about the quickest way I know of:

Downside: you only get to see the package names, not the friendly application names (There's seemingly no easy cli way. For programmers: get application name from package name)
Downside 2: Be sure what you do, you might uninstall every app on your phone if you don't edit the list.

 # Use android's package manager 'pm'  
 # list all 3rd party pkgs (using the '-3' parameter)  
me@local:~$ adb shell pm list packages -3 > /tmp/pkg.list  
 # Use whatever editor you like (grep, vi, GUI) to edit the list  
me@local:~$ vi /tmp/pkg.list  
me@local:~$ cat /tmp/pkg.list | sed 's,.*:,,' | while read a; do adb uninstall $a;done

Maybe also an improvement for a limited number of apps:

Google's Play Store now offers improved per device management (since around Google I|O 2012):

Go to My Android Apps (login required) and you see "Apps installed on [Device Model]". Per app you have an:

  • Update button (if there's an update)
  • Uninstall button (except for system apps)

Using this you can easily uninstall apps on specific phones or tablets using your internet browser.

See also this accepted answer: Remotely uninstall apps?

Andrew T.
  • 15,988
  • 10
  • 74
  • 123
ce4
  • 14,446
  • 10
  • 60
  • 106
  • While updating and uninstalling from the web Store makes things much easier (I really like it) you still need to do each app one at a time. – ale Jul 02 '12 at 13:32
  • @Al Everett: Added scripted solution also. Better? :-) – ce4 Jul 02 '12 at 14:23
  • It's an option. Not one that will work for me, but someone else can probably benefit. – ale Jul 02 '12 at 14:42
1

It's been awhile since I used it, but AppBrain's app will let you sync to your AppBrain account... so it should uninstall apps you remove from your AppBrain account, but I can't verify that since I don't use it anymore.

Not a batch uninstall, but in LauncherPro you can drag and drop apps to the trash can, hover for a few seconds, and then drop to uninstall it (instead of removing it from the homescreen). Works from the app drawer too. This is the method I usually use.

Bryan Denny
  • 21,906
  • 20
  • 78
  • 98
1

There are a ton, aren't there?

One I'm looking at is Apps Uninstall.

A nice feature it has is the ability to mark apps to protect them from accidentally bulk uninstalling.

alt text

ale
  • 19,723
  • 34
  • 110
  • 159
0

For Windows users, after generating the list packages like this

adb shell pm list packages -3 > pkg_third.txt

Open and edit this file, leave only packages that will be REMOVED.

In PowerShell, execute this script

Get-Content '.\pkg_third.txt' | ForEach-Object {
$packageNameCleaned = $_ -replace '.*:', ''
Write-Host "Removing $packageNameCleaned" 
& adb uninstall $packageNameCleaned

}

Rohit Gupta
  • 1,795
  • 2
  • 14
  • 24
jaac
  • 1
  • 1
0

The problem with his method and most other methods I have seen (at least on my CentOS 6 and Ubuntu 10 machines) is that CRLFs were at the end of each line of the /tmp/pkg.list file, so the uninstaller instead of uninstalling com.google.chrome, was actually attempting to uninstall 'com.google.chrome^M' ... notice the CR return character. By doing dos2unix, there is 'Success', not 'Failure'. His sed script may have originally been a substitute for dos2unix, but was mangled when posted.

[CentOS6]# adb shell pm list packages > /tmp/pkg.list.txt
[CentOS6]# adb push /tmp/pkg.list.txt /tmp/
[CentOS6]# adb shell
android:/root # dos2unix /tmp/pkg.list.txt
android:/root # for f in \`cat /tmp/pkg.list.txt\`; do echo $f; pm uninstall $f; done;

The 'Failure' problem has more to do with the ADB shell appending a DOS line ending ^M (on CentOS Linux anyway).

Since I did everything from CentOS 6, I was surprised to be bitten yet again by 1980s technology that was never as good as the technology from 1969. I guess Google wanted to make things easier for Windows users of the ADB shell.

(I had edited (appended) to ce4's answer, but apparently that did not take.)

Peter Mortensen
  • 320
  • 2
  • 11
rjt
  • 169
  • 1
  • 1
  • 7
  • Also, for windows users of the adb shell hmmm... you did not happen to be using notepad or similar? They do not handle Un*x format files - Notepad2 or Notepad++ would have been a better choice in which it can handle that :) – t0mm13b Mar 11 '13 at 03:04
  • i bulk uninstalled a bunch of applications to copy to /system/app/ because my phone is stuck in safe-mode. The phone is still booting. i believe i should be able to provide proof that adb itself even when run on Linux is appending DOS newline characters. No windows was involved, i mainly use CentOS, Ubuntu 10, and other flavors of *nix. i only use windows to administer ADS. – rjt Mar 11 '13 at 03:58
  • How does this even answer the question? – ale Mar 11 '13 at 18:40
  • 1
    Al, the question was how to bulk uninstall applications, the script i posted above does exactly that. Notice the 'pm uninstall' part. – rjt Apr 23 '13 at 00:57