rjt*_*rjt 50
是的,移动设备管理会带来自己的问题,但我敢打赌'失败'是一个dos2unix问题.在我的Linux机器上,adb附加一个DOS换行符,导致'失败',因为卸载认为CR字符是包名称的一部分.同时从package-1.apk文件名的末尾删除'-1.apk'.
adb root
adb shell
pm list packages
pm uninstall com.android.chrome
Run Code Online (Sandbox Code Playgroud)
在我的情况下,我有一个永久"安全模式"的手机,所以只有/ system/app /下的应用才有机会运行.所以我安装它们以复制掉.apk文件,然后批量卸载并复制到/ system/app /,擦除/缓存并重新启动.现在我有更多的应用程序在运行,即使在安全的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
Run Code Online (Sandbox Code Playgroud)
擦除缓存电源.
edg*_*edg 34
这不是一个确切的答案,但如果您要卸载应用程序,因为您有一个更新的.apk要安装,您可以尝试这样做:
adb install -r yourapp.apk
Run Code Online (Sandbox Code Playgroud)
该-r
选项告诉adb重新安装该应用程序
Luk*_*ski 32
我假设您developer mode
在Android设备上启用并且您已连接到您的设备并且您具有shell访问权限(adb shell
).
完成此操作后,您可以使用此命令卸载应用程序pm uninstall --user 0 <package.name>
.0是root id - 这样你就不需要root了你的设备.
以下是我在huawei p110 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 gmail app
pm uninstall --user 0 com.google.android.gms
Run Code Online (Sandbox Code Playgroud)
pow*_*366 18
如果是Android内部应用,您可能需要:
这将由您自己承担风险; - |,首先尝试使用模拟器...
小智 13
只需运行 ADB 并使用以下命令:
adb shell pm uninstall -k --user 0 <package name>
Run Code Online (Sandbox Code Playgroud)
你应该得到这个回报:
successful
Run Code Online (Sandbox Code Playgroud)
好像您的应用程序包含一个隐藏的设备管理员,如下所示:http://www.symantec.com/security_response/writeup.jsp?docid = 2013-060411-4146-99
您只能在首先禁用设备管理员时卸载此类应用程序.您可以使用https://play.google.com/store/apps/details?id=com.trendmicro.mtrt.hiddenDAcleaner将其禁用或通过将意图发送到调用接收器的应用程序来自行执行此操作禁用设备管理员.
我发现这种方法adb shell pm uninstall <package>
一致,哪些adb uninstall <package>
方面没有.
小智 7
哦,我在同样的情况下,我尝试了所有这一切没有结果..最后的答案是关闭..我做到了这样做:
为了获得您的包的正确名称,请执行以下操作:
adb shell pm list packages | grep "name of your app here"
你应该看到你的应用程序的正确名称..所以现在这个工作正常:
adb uninstall com.your-real-app-name
Run Code Online (Sandbox Code Playgroud)
最后命令运行再次起作用:
ionic run android
Run Code Online (Sandbox Code Playgroud)
小智 2
您应该必须手动删除应用程序。进入设置->应用程序管理->运行应用程序,点击它,您可以从那里删除、停止应用程序。
归档时间: |
|
查看次数: |
147795 次 |
最近记录: |