a CURD boy's blog.

使用adb卸载Android预装app与恢复方法( 无root/root )

2019.04.01

在 Android 10 和 Android 11 上经过测试有效,其他版本应该也适用。

无需 root 的方法

1.打开adb并连接

这一步不会建议Google一下,我懒得写啦

2.搜索包名

可以使用adb shell pm 的 list 命令, 配合 grep 使用关键词获取包名

adb shell pm list packages|grep <keyword>

3.删除app

adb shell pm uninstall --user 0 -k <package.name>

其中 –-user 0 参数是必须的, 它告诉系统仅为当前用户(用户 id 默认为0)卸载该app
-k参数代表保留 app 的数据, 经过测试这个参数加不加都可以顺利卸载

4.后悔药–恢复app

adb shell cmd package install-existing <package.name>

因为上一步中, 仅仅是为当前用户卸载, 实际上预装 app 的文件还存在在 system 分区中, 所以我们可以让已经卸载掉的 app 恢复, 也因为如此, 如果忘记了包名, 还可以用第一步中的搜索方法查到, 或着使用 history 命令查看

已经root的方法

1.打开adb并连接

同上

2.搜索包名

同上

3.禁用app

adb shell pm disable <package.name>

4.恢复app

adb shell pm enable <package.name>