1. 为什么需要卸载预装应用?

刚拿到新手机时,很多人会发现系统自带了一堆用不上的应用。这些预装软件不仅占用存储空间,有些还会在后台偷偷运行消耗电量。更让人头疼的是,大部分预装应用无法通过常规方式卸载,长按图标只会显示"停用"而非"卸载"选项。

以我最近帮朋友处理的荣耀手机为例,系统预装了2个输入法、3个视频播放器和4个购物应用。这些"牛皮癣"应用不仅挤占了宝贵的存储空间,有些还会推送广告。通过ADB命令卸载是最安全有效的方式,既不需要Root权限(避免失去保修),又能彻底清理这些顽固应用。

2. 准备工作:搭建ADB环境

2.1 电脑端配置

首先需要准备:

  • Windows/Mac/Linux电脑
  • 原装USB数据线(第三方线可能无法识别)
  • 手机剩余电量建议50%以上

步骤详解:

  1. 下载 Android SDK Platform Tools ,解压到任意目录(例如C:\adb)
  2. 添加环境变量:
    • Win10/11:右键"此电脑"→属性→高级系统设置→环境变量→Path→编辑→新建→输入adb工具路径
    • Mac/Linux:在~/.bash_profile添加 export PATH=$PATH:/path/to/adb

验证安装是否成功:

adb version

正常会显示类似"Android Debug Bridge version 1.0.41"的版本信息。

2.2 手机端设置

不同品牌开启开发者模式的步骤略有差异:

  • 华为/荣耀:设置→关于手机→连续点击"版本号"7次
  • 小米:设置→我的设备→全部参数→连击MIUI版本
  • OPPO:设置→关于手机→版本信息→连续点击版本号

开启后需启用:

  1. USB调试(必备)
  2. "仅充电模式下允许ADB调试"(避免断开连接)
  3. 部分机型需要额外开启"USB安装"和"USB调试安全设置"

安全提示:操作完成后建议关闭USB调试,防止他人通过电脑恶意控制你的设备

3. 精准定位要卸载的应用

3.1 连接设备与授权

用数据线连接手机和电脑,在手机上弹出的"允许USB调试"对话框中勾选"始终允许"后确认。接着在电脑终端输入:

adb devices

正常会显示设备序列号及"device"状态。如果显示"unauthorized",需要检查手机是否点击了授权。

3.2 查找包名的三种方法

方法一:使用MT管理器

  1. 安装后进入"安装包提取"功能
  2. 在系统应用列表中找到目标应用
  3. 包名通常为com.xxx.xxx格式(如华为应用市场是com.huawei.appmarket)

方法二:ADB命令筛选

adb shell pm list packages | grep "关键词"

例如找所有华为预装应用:

adb shell pm list packages | grep huawei

方法三:查看当前运行应用

adb shell dumpsys window | grep mCurrentFocus

适合快速获取前台应用的包名。

4. 核心卸载命令详解

4.1 基础卸载命令

标准卸载语法:

adb shell pm uninstall --user 0 <包名>

以卸载华为浏览器为例:

adb shell pm uninstall --user 0 com.huawei.browser

看到"Success"提示即表示成功。

4.2 高阶参数解析

  • -k :保留应用数据和缓存(适合临时卸载)
  • --user 0 :针对主用户操作(多用户设备需注意)
  • pm disable-user :停用而非卸载(更安全)

实测对比:

命令 效果 恢复难度
pm uninstall 完全卸载 需重新安装
pm uninstall -k 卸载但保留数据 重装后恢复数据
pm disable-user 仅禁用 随时可启用

4.3 批量卸载技巧

创建卸载脚本(Windows批处理示例):

@echo off
adb shell pm uninstall --user 0 com.huawei.video
adb shell pm uninstall --user 0 com.huawei.music
adb shell pm uninstall --user 0 com.huawei.gamecenter
pause

5. 风险控制与注意事项

5.1 绝对不能卸载的核心应用

根据实测经验,这些应用卸载会导致系统异常:

  • 桌面应用(如com.huawei.android.launcher)
  • 设置(com.android.settings)
  • 电话/短信相关组件
  • 系统UI(com.android.systemui)

5.2 误删恢复方案

如果不小心删错应用,可通过以下命令恢复:

adb shell cmd package install-existing <包名>

或者刷入全量包(会丢失数据,慎用)。

5.3 不同品牌的特殊限制

  • 小米:需关闭"MIUI优化"才能看到全部预装应用
  • OPPO:部分系统应用需要先执行 pm clear 清除数据
  • 三星:Knox安全机制可能导致某些命令失效

6. 进阶技巧与自动化

6.1 使用无线ADB调试

摆脱数据线束缚:

adb tcpip 5555
adb connect 手机IP:5555

注意:首次仍需有线连接授权。

6.2 图形化工具推荐

  • Scrcpy :在电脑显示手机界面操作
  • QtScrcpy :带可视化ADB命令面板
  • 甲壳虫ADB助手 :手机端直接操作

6.3 自动化脚本示例

Python自动化脚本:

import os

apps_to_remove = [
    "com.huawei.hidisk",
    "com.huawei.hwireader",
    "com.huawei.android.totemweather"
]

for app in apps_to_remove:
    os.system(f"adb shell pm uninstall --user 0 {app}")

7. 常见问题排查

Q:提示"Failure [DELETE_FAILED_INTERNAL_ERROR]"怎么办? A:先执行 adb shell pm clear <包名> 清除数据再试

Q:连接后设备列表为空? A:检查数据线、USB调试是否开启,尝试更换USB接口

Q:卸载后应用图标仍在? A:重启手机或清除桌面数据即可

Q:系统更新后应用又回来了? A:这是正常现象,可重新卸载或冻结应用

记得操作前备份重要数据,虽然ADB卸载相对安全,但任何系统修改都有风险。建议首次操作时有人指导,或者先在备用设备上练习。

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐