使用 adb 免root 卸载安卓手机自带应用

0x00 引子

一直用的 lineageos 系统目前是 16 版本,让我的 nexus6 再一次重获新生。Android 版本目前是 9.0,哪里都还好我最受不了的是机器自带了几个应用,虽然安装 gapps 后会替换掉一些,但是心里还是不爽。这才有了要卸载他们的问题。

实现方法

  1. 手机上开启usb调试模式,多次点版本号,开启开发者选项,开启adb调试模式。

  2. 在电脑上安装adb 参考教程: https://ezlost.com/%E5%AE%89%E5%8D%93%E6%89%8B%E6%9C%BA%E5%88%B7%E6%9C%BA%E7%94%A8%E5%88%B0%E7%9A%84-adb-%E5%92%8C-fastboot-%E6%95%B4%E7%90%86%E8%87%AA-lineageos/

  3. 在windows cmd或Linux的终端内输入

    adb devices

    查看有没有设备,有的话继续输入

    adb shell

    这样就进入了手机的的linux系统内部。

  4. 获取软件包的名称

    输入

    pm list packages

    这样可以看到所有的软件包名,在上面的命令结尾加参数 -s 系统软件,-3 第三方的软件。

    手机上使用报名查看器去对应软件与com开头的软件的信息。这样可以确定要删除的软件是哪个。

另一种方法

输入 dumpsys window | grep mCurrentFocus window{} 中就是这个界面的包名类名,

```bash
dumpsys window|grep -i mCurrentFocus
mCurrentFocus=Window{b92fc1e u0 com.tencent.mm/com.tencent.mm.ui.LauncherUI}
```

其中 com.tencent.mm 就是微信的名称。
  1. 卸载

    使用 pm uninstall -k --user 0 packageName packageName 就是软件的名称上面获取出来的 com.tencent.mm

    -k 表示保存数据,如不需要,可去掉 -k。
    --user 指定用户 id,Android 系统支持多个用户,默认用户只有一个,id=0

    重启以后软件就卸载掉了。

上一篇
下一篇