我正在写一些示例应用程序。
调试这些应用程序后,我在设备的应用程序管理中看不到卸载按钮。
当我卸载adb时,它总是显示Failure without any reason.
在DDMS中,我看到我的apk存储在/data/app/com.k2g.leaveDemo-1.apk中。
我不确定我错过了什么。
我总是不得不重启我的设备来摆脱这些应用程序:
我需要签些什么吗?
我是否需要在调试模式下执行某些操作?
或者它依赖于版本?
我用的是三星S2。
发布于 2018-01-04 03:22:27
我假设你在你的android设备上启用了developer mode,并且你已经连接到你的设备并且你有shell访问(adb shell)。
完成此操作后,您可以使用此命令pm uninstall --user 0 <package.name>卸载应用程序。其中,为安卓系统主用户ID。这样你就不需要在你的设备上建立根了。
这是我在我的华为p10 lite设备上做的一个例子。
# gain shell access
$ adb shell
# check who you are
$ whoami
shell
# obtain user id
$ id
uid=2000(shell) gid=2000(shell)
# list packages
$ pm list packages | grep google
package:com.google.android.youtube
package:com.google.android.ext.services
package:com.google.android.googlequicksearchbox
package:com.google.android.onetimeinitializer
package:com.google.android.ext.shared
package:com.google.android.apps.docs.editors.sheets
package:com.google.android.configupdater
package:com.google.android.marvin.talkback
package:com.google.android.apps.tachyon
package:com.google.android.instantapps.supervisor
package:com.google.android.setupwizard
package:com.google.android.music
package:com.google.android.apps.docs
package:com.google.android.apps.maps
package:com.google.android.webview
package:com.google.android.syncadapters.contacts
package:com.google.android.packageinstaller
package:com.google.android.gm
package:com.google.android.gms
package:com.google.android.gsf
package:com.google.android.tts
package:com.google.android.partnersetup
package:com.google.android.videos
package:com.google.android.feedback
package:com.google.android.printservice.recommendation
package:com.google.android.apps.photos
package:com.google.android.syncadapters.calendar
package:com.google.android.gsf.login
package:com.google.android.backuptransport
package:com.google.android.inputmethod.latin
# uninstall google play services (warning: take backup first!)
pm uninstall --user 0 com.google.android.gms发布于 2013-03-11 12:53:35
是的,移动设备管理会带来它自己的问题,但我打赌“失败”是一个dos2unix问题。在我的Linux机器上,adb附加了一个DOS换行符,这会导致“失败”,因为卸载认为CR字符是包名的一部分。还要从package-1.apk文件名的末尾删除'-1.apk‘。
adb root
adb shell
pm list packages
pm uninstall com.android.chrome在我的例子中,我的手机处于永久的“安全模式”,因此只有/system/app/下的应用程序才有机会运行。所以我安装它们来复制.apk文件,然后批量卸载并复制到/system/app/,擦除/cache并重启。现在,我有更多的应用程序运行,即使在安全的mdoe。
# adb root
# pm list packages -3 > /root/bulkuninstall.txt
# vi /root/bulkuninstall.txt and check ^M characters at end of each line.
If ^M, then must run dos2unix /root/bulkuninstall.txt.
Remove '-1.apk' using vi search and replace:
:%s/-1\.apk//g
Or sed...
# cp /data/app/* /storage/sdcard1/APKs/
# for f in `cat /root/bulkuninstall.txt`; do echo $f; pm uninstall $f; done;
#
# echo Now remount system and copy the APK files to /system/app/
# mount | grep system
# mount -o remount,rw /dev/block/(use block device from previous step) /system
# cp /storage/sdcard1/APKs/* /system/app/
# reboot擦除高速缓存开机。
发布于 2014-02-08 01:37:07
这不是一个确切的答案,但如果你想卸载这个应用程序,因为你有一个更新的.apk要安装,你可以尝试这样做:
adb install -r yourapp.apk-r选项告诉adb重新安装应用程序
https://stackoverflow.com/questions/13534935
复制相似问题