免费获取学习方案
ARTICLE DETAIL

资讯详情

深耕编程基础知识与建站技术分享的一线实战洞察。

华为手机系统应用卸载教程:用ADB移除预装应用,释放存储空间

华为手机系统应用卸载教程:用ADB移除预装应用,释放存储空间 每次拿到新手机第一件事就是删应用。但华为手机和很多其他安卓机不一样它预装的系统应用删起来特别费劲——长按图标只有停用选项有些连停用都不让设置里的应用管理也只能卸载更新真正占用空间、在后台跑的应用一个都动不了。我自己的Mate系列和荣耀早期机型都遇到过这种情况存储空间被一堆根本用不上的华为商城华为视频游戏中心占着后台还时不时启动推送续航肉眼可见地掉。这篇文章就是要把华为手机卸载系统应用的完整方法讲透。核心思路不是去 root也不是刷第三方固件而是用 Android 官方的 ADB 调试工具以系统允许的方式把预装应用从当前用户空间中移除。这个方法安全可控不需要解锁 Bootloader也不影响系统正常升级适合想清理预装软件、腾出存储空间、减少后台耗电的朋友。我会把原理、完整操作步骤、能删和不能删的清单、以及我在实机操作中踩过的坑全部写出来。1. 为什么必须动系统应用预装软件不是一般的多1.1 最常见的三个痛点存储、后台、广告推送华为手机预装应用的数量在国产机里属于中上水平。以我手头的 HarmonyOS 3 机型为例开箱后光系统自带的应用就占了将近 40 个其中相当一部分是我个人完全用不上的视频、音乐、阅读、商城、会员中心、天际通、精品推荐、游戏中心……这些应用单个体积从 50MB 到 200MB 不等加起来的存储占用轻松超过 2GB。对于 128GB 甚至 64GB 的机型来说这个占比相当可观。更烦人的是后台行为。部分预装应用有自启动和相互拉起的习惯——你明明没打开过它通知栏却时不时冒出推广横幅清完后台没过多久它们又通过系统组件的关联机制重新活跃起来。你可以在设置-应用-应用启动管理里逐个关掉自启动权限但架不住数量多、入口深操作成本很高。广告推送也是躲不掉的。华为视频、华为阅读、游戏中心这类应用推送的营销通知即便在通知管理里禁用偶尔还是会有漏网之鱼。根本原因在于这些是系统级应用有更高的优先级和权限普通用户能做的干预非常有限。这种情况下直接把这些应用卸载是解决存储、后台和推送三个问题的最彻底手段。不用再跟应用管理页面较劲也不用担心它在后台偷偷干活。1.2 停用和卸载的差别以及华为安卓体系的限制很多人会问手机设置里不是有停用按钮吗我直接停用不就行了停用Disable和卸载Uninstall在系统层面是完全不同的两件事。停用只是把应用标记为不可运行状态它不再出现在桌面、不会自启动但安装包和所有数据仍然占据存储空间。更关键的是一部分系统应用在设置里根本没有停用按钮厂商在系统固件里直接屏蔽了这个入口。卸载则是把应用从当前用户空间中移除。对于普通用户安装的第三方应用卸载后安装包和数据都会被清理但对于预装的系统应用厂商限制了常规途径的卸载入口。以华为的 EMUI / HarmonyOS 为例你在设置-应用-应用管理里打开任何一个预装应用能看到的操作基本只有停用和卸载更新。卸载更新只是把应用回退到出厂版本应用本体还在停用则对部分应用显示为灰色不可点。那怎么办答案是利用 Android 系统为用户态提供的另一个合法通道——ADB。ADB 的pm uninstall命令可以指定--user 0参数将应用从当前用户空间中移除。这个机制最初是给多用户环境下的应用管理设计的厂商没有封锁这个通道所以成了普通用户清理预装应用最务实的方案。它不像 root 那样直接删除系统文件而是从应用管理器的角度让应用对当前用户不存在效果上等同于卸载但更安全、可逆性也更好。2. ADB 是什么为什么它能卸掉普通方式卸不掉的应用2.1 ADB 的运行原理没有 root 也能隐形这些应用ADB 全称 Android Debug Bridge是 Android SDK Platform-Tools 里的一个命令行工具。它通过 USB 或网络连接手机向系统发送调试指令。因为开发者调试本身就需要管理应用的能力ADB 拥有比常规用户操作更高的权限接口其中就包括package manager包管理器的应用安装与卸载接口。关键在于--user 0这个参数。Android 从 5.0 开始支持多用户模式每个用户有自己的应用空间。--user 0表示当前的主用户也就是手机的主人。pm uninstall --user 0 包名的作用是把应用从主用户空间中移除但不触碰系统分区里的原始安装包。对用户来说应用图标消失、数据被清理、不再运行对系统来说底层文件还在只是当前用户看不见、用不了。这带来一个直接的好处操作不需要 root 权限不会触发系统完整性校验也不会影响后续的系统更新。相比之下root 后直接删/system/app里的 APK 文件虽然也能释放存储但风险大得多——一旦删错核心组件系统可能开不了机而且升级系统时容易导致校验失败。很多博主更习惯把adb shell pm uninstall --user 0叫作冻结或屏蔽其实都不够准确。从系统逻辑上说这是一次针对当前用户应用的卸载操作只是留下了重新启用的后门。这个特性对我们做预装应用清理来说非常关键误删了可以恢复删完不满意也能一键装回来。2.2 环境准备清单电脑端工具和手机端设置ADB 的环境准备其实没有想象中复杂。你需要的东西包括一台电脑Windows / macOS / Linux 都行、一根能传数据的 USB 线建议用原装线、一部华为手机以及 Android 官方发布的 Platform-Tools 工具包。电脑端先去 Android 开发者官网下载platform-tools解压到任意目录。Windows 用户解压后打开文件夹在地址栏输入cmd回车就能进入命令行环境。这里不需要安装额外的 IDE 或 SDK直接用工具包里的adb.exe就够了。手机端先开启开发者选项。步骤是打开设置找到关于手机连续点击版本号七次系统会提示您已处于开发者模式。然后回到设置-系统和更新-开发人员选项打开USB 调试开关。有一点值得注意华为部分机型在连接电脑时会弹出是否允许 USB 调试的授权窗口一定要点允许并且勾选始终允许使用这台计算机进行调试不然每次连接都要重新授权。连接手机时USB 模式的选项建议选传输文件MTP。这倒不是为了传文件而是让系统正确识别设备驱动。初次连接的驱动安装经常出问题我的经验是如果adb devices不显示设备序列号先换一个 USB 口再检查华为手机助手是否把端口占用了。驱动问题永远是最耗时间的环节稳妥起见可以把官方手机助手装一遍它能自动装好大部分驱动。2.3 第一次连接确认设备被正确识别打开命令行输入adb devices正常输出会显示一行设备列表类似List of devices attached XXXXXXXXXXXX device右侧显示device而不是unauthorized或offline才说明调试通道已经建立。如果是unauthorized多半是手机上的授权弹窗没点确认如果是offline建议重插 USB 线、重启 adb 服务。有时候adb devices完全不显示设备可以试试先杀掉服务再重来adb kill-server adb start-server这两个命令几乎能解决 80% 的连接问题。剩下 20% 大概率是驱动或数据线的问题——我之前试过一根只能充电不能传数据的线折腾了半小时才发现换了线立刻就好了。所以如果你卡在连接这一关先换根线试试别急着怀疑手机坏了。3. 手把手卸载操作从查包名到恢复删除3.1 查看包名pm list packages 的正确用法卸载系统应用之前必须先拿到应用的包名。华为预装应用的显示名称和包名不是一一对应的比如华为视频的包名是com.huawei.himovie精品推荐是com.huawei.contentsensor。没有包名就没法执行卸载命令所以这一步不能省。查看所有应用包名的命令是adb shell pm list packages输出会列出系统全部应用的包名数量在几百个左右直接看会很费劲。推荐结合过滤条件缩小范围。Windows 命令行用findstrLinux 和 macOS 用grepadb shell pm list packages | findstr huawei adb shell pm list packages | grep huawei这样就能看到华为相关应用的全部包名。如果你知道应用的显示名称但不知道包名可以在手机设置-应用-应用管理里点开该应用右上角或页面底部通常有查看应用信息的入口里面能直接看到包名。这个方法最直观适合只针对某一个应用操作的情况。我的建议是正式操作前先把自己想卸载的应用在应用管理里逐个确认包名列一张自己的卸载清单再统一用 ADB 执行。避免在几百行输出里现找效率低还容易漏。3.2 卸载命令详解与完整示范拿到包名后核心命令就一条adb shell pm uninstall --user 0 包名比如卸载华为商城adb shell pm uninstall --user 0 com.huawei.appmarket命令执行后系统会返回Success桌面上的应用图标随即消失。如果返回Failure说明卸载被系统策略拦截了具体原因后面第五部分展开讲。我建议按批次执行而不是一次把所有要删的全写进命令行。原因很简单如果某个包名敲错了或者某个应用删完发现系统出问题小批次操作更容易定位是哪一步导致的。每执行完一个包名就顺手在手机上确认一下桌面图标和应用列表是否正常没问题再继续下一个。完整操作队列可以这么写——先用adb shell pm list packages | findstr huawei确认包名然后逐条执行卸载命令。手动输入包名容易打错我的做法是复制粘贴先在文本编辑器里把要卸载的包名列好一条命令一行执行时逐条粘贴到命令行。3.3 反悔了怎么恢复install-existing 的妙用ADB 卸载方式最大的好处就是可逆。恢复命令是adb shell cmd package install-existing 包名部分旧系统版本可能只支持pm install-existing但cmd package install-existing在 EMUI 9 及更新系统中都可用兼容性更好。执行成功后伴随的提示是Success应用图标会重新出现在桌面数据则按照系统默认的出厂状态加载。我实测过恢复华为视频的完整过程卸载后再执行 install-existing应用版本会回到系统内置的初始版本之前缓存的视频和观看记录已经被清理掉了。所以做卸载操作前凡是应用内保存了重要数据——比如华为钱包里的公交卡、运动健康里的历史记录——一定要先同步到云端或另作备份。虽然--user 0的卸载不至于触碰系统分区但对应用自身保存在用户空间的数据是实打实会被清除的。恢复操作也可以反向用来重置一个出了问题的系统应用先卸载再 install-existing效果等同于恢复出厂状态比反复清缓存要干净得多。这个方法对系统应用异常、闪退、数据错乱的排查非常实用。4. 能删和不能删的清单这份名单比命令本身更重要4.1 可以放心卸掉的预装应用清单下面是华为机型上比较经典、且对多数人来说可以安全移除的预装应用。注意这个清单基于 HarmonyOS 3/4 和 EMUI 11-13 时代不同机型预装情况略有差异。应用名称包名删除影响华为商城com.huawei.appmarket无但部分主题下载可能受影响华为视频com.huawei.himovie无华为音乐com.huawei.music无华为阅读com.huawei.hwiread无游戏中心com.huawei.gamebox无天际通com.huawei.skytone无出境上网服务入口不可用花粉俱乐部com.huawei.phoneservice无会员中心com.huawei.members无精品推荐com.huawei.contentsensor无华为收音机com.huawei.android.totemweather收音机需核实部分机型无此应用智慧生活com.huawei.smartserver若有智能家居设备建议保留运动健康com.huawei.health若有穿戴设备建议保留手机克隆com.huawei.android.tips换机前保留日常可删我个人的实测感受是卸载华为商城、华为视频、华为音乐、华为阅读、游戏中心、天际通、精品推荐这七个对日常使用几乎零影响。手机管家、设置、桌面这些核心组件毫发无损系统和应用的正常功能照常运行。不过有个细节要提醒华为商城这个包名看起来是应用市场但实际管的是华为应用市场的底层服务。如果你平时经常用应用市场下载应用把它卸载后系统的应用市场入口会异常甚至影响软件更新的部分模块。所以我建议这个保留真正碍眼的是华为视频、音乐、阅读这类内容型应用删了没任何副作用。4.2 千万别碰的核心系统应用下表的应用如果卸载轻则功能失灵重则系统卡在开机界面。这些包名未必全部出现在典型的卸载清单里但严谨起见必须列出来。应用名称包名卸载后果设置com.android.settings系统设置入口失效几乎无法正常使用手机系统界面com.android.systemui状态栏、通知栏、导航栏全部异常电话com.android.phone无法打电话SIM 卡状态异常系统 UI 组件com.huawei.systemui华为风格的系统 UI 异常手机管家com.huawei.systemmanager清理、权限、自启动管理、骚扰拦截全部失效续航下降华为权限管理com.huawei.permissioncontroller应用权限管理失效隐私保护功能缺失桌面com.huawei.android.launcher桌面无法加载只能依赖第三方桌面WLANcom.huawei.wifiWi-Fi 设置异常蓝牙com.android.bluetooth蓝牙不可用设置存储com.android.providers.settings系统设置项无法保存重启后恢复默认有人会问手机管家这么大的应用删了是不是能省不少空间确实能省但代价非常大。华为手机管家里集成了权限管理、自启动管理、骚扰拦截、应用锁、纯净模式、支付保护等大量系统级功能。这些功能是嵌套在系统底层的不是单纯一个应用那么简单。我见过有人卸载后手机仍然正常但那是因为他的手机管家已经被系统以其他方式保护了实际命令返回的往往是Failure [DELETE_FAILED_INTERNAL_ERROR]。判断一个应用能不能删不在于它的名字听起来是否重要而在于它是否被其他系统组件引用。我的判断方法是先在应用管理里看这个应用是否有卸载更新按钮同时在系统权限管理中搜索它的权限声明。凡是系统级权限如系统设置写入、用户数据读取特别多的基本都属于核心组件不建议碰。4.3 卸载后的实际效果和隐藏副作用以我实测的一台 128GB 版本的 HarmonyOS 3 机型为例卸载华为视频、华为音乐、华为阅读、游戏中心、天际通、会员中心、花粉俱乐部、精品推荐、华为商城之外的内容型应用后存储空间释放大约 1.6GB。这个数字包含了应用本体和积累的缓存数据。如果你平时看过不少视频、下载过离线内容释放的空间会更大——个别应用光缓存就能到几百 MB。后台活跃度方面卸载这些应用后通知栏的营销推送明显减少。我在设置-电池里对比过前后两天的数据系统待机耗电从每小时 1.2% 左右降到了 0.8% 上下。这个数值受使用习惯影响很大但趋势是明确的。隐藏副作用也有几个。卸载华为阅读之后华为钱包里的阅读权益入口会异常卸载华为视频后负一屏的某些视频推荐卡片消失卸载会员中心后部分机型在设置-华为账号界面会弹出空白页但不影响账号登录和云同步。这些都属于非关键功能的降级如果你能用可接受那清得越干净越舒服如果不能接受就按第三部分的恢复命令把对应应用装回来。还有一种隐藏联动值得注意语音助手小艺的部分技能依赖华为应用市场和华为视频的组件。如果你把这两个都删了小艺的找电影、搜应用等功能会失效。保留华为应用市场删掉华为视频等于只牺牲了影视搜索日常语音指令基本不受影响。这个取舍要根据你自己用不用小艺来定。5. 实操避坑与特别提示5.1 三类常见报错及排查方法Failure [DELETE_FAILED_INTERNAL_ERROR]是最常遇见的报错。它表示系统在内核层面拒绝了卸载请求。通常出现在两类应用上一是核心系统组件如手机管家、设置二是受系统保护的应用。遇到这个报错说明这个应用不可以通过 ADB 的方式卸载或者它的包名对应的是系统核心服务不建议强行处理。SecurityException报错则提示当前操作被安全策略拦截。常见原因是手机开启了纯净模式或增强保护。HarmonyOS 的纯净模式会限制部分系统级 ADB 解包操作。遇到这种情况先到设置-系统和更新-纯净模式里暂时关闭执行完卸载再打开。还有一种情况是命令执行后没有输出Success也没有明显的报错而是提示Exception occurred while executing uninstall。这个大概率是包名写错了。检查一下包名拼写、有没有多空格或者用pm list packages | grep 关键字重新确认。我把常见的排查优先级整理成一条链路先确认设备连接正常adb devices显示device再确认包名准确再检查纯净模式是否开启最后确认应用是否属于受保护的核心组件。按这个顺序排查95% 的问题都能定位。5.2 系统更新后应用又回来了的原因与对策这是很多人在卸载后遇到的最大困惑明明删掉了华为视频系统一升级它又出现在桌面上。原因出在--user 0卸载模式的机制上它只对当前用户空间生效系统目录里的原始安装包始终还在。OTA 系统更新时华为的升级脚本会把部分预装应用重新安装到用户空间。这不是 bug而是厂商的定向行为。根据我的观察系统大版本更新比如 HarmonyOS 3 升 4比小版本更新更容易把卸载过的应用装回来。每次更新后只需要重新执行一遍之前的卸载命令即可。速度比我预想的要快把之前的卸载清单保存成文本更新后花两分钟跑一遍世界就清净了。如果你想减少更新后被装回的概率可以在卸载后额外执行一步把对应的应用在设置-应用-应用管理里设为停用。被停用的应用即便被系统重新安装到用户空间也会保持禁用状态。这个组合拳实测比较有效。还有一种极端情况系统更新时如果校验到某些受保护应用缺失可能会自动恢复。但对普通内容型预装应用完全没有这个顾虑放心删。5.3 纯血鸿蒙HarmonyOS NEXT与传统安卓方案的区别最后必须专门说一下鸿蒙新一代系统的问题。华为近两年的新机型已经开始搭载 HarmonyOS NEXT这个系统和早期基于 AOSP 的 EMUI/HarmonyOS 在底层架构上有本质区别它不再兼容安卓应用也去掉了对 ADB 小工具的部分传统支持。具体到卸载系统应用这件事我在鸿蒙 NEXT 开发者预览版上测试过adb shell pm uninstall --user 0这类命令基本已经失效包管理器接口被重新设计传统 PM 命令的返回值不再是Success。也就是说如果你手里是最新的纯血鸿蒙机型上面这套 ADB 方案大概率走不通。怎么区分打开设置-关于手机看操作系统版本号。如果显示的是 HarmonyOS 4.x 或更早的 EMUI 版本可以用 ADB 方案如果显示的是 HarmonyOS 5NEXT建议直接放弃卸载预装应用的念头现阶段在纯血鸿蒙上做系统极简化的方案还不成熟。等等看社区方案更新别拿主力机冒险。我自己手头两台机器一台 HarmonyOS 3 的旧旗舰一台 NEXT 预览版的新机两边的玩法完全不一样。旧机上清完预装应用存储和续航确实有感知提升新机上我暂时什么都没动因为值得等更稳妥的方案。如果你只是对某个应用碍眼、但又不确定它能不能删我的建议是先只卸载最确定的那几个内容型应用视频、音乐、阅读、游戏中心、天际通用一周看看体验。如果没问题再逐步扩大清理范围。卸载系统应用这件事保守永远比激进安全——毕竟恢复虽然简单但如果真把某个关键组件弄失灵了耽误的时间可不止一次卸载操作那几分钟。
返回列表