app图标无法通过uni-app前端代码直接显示在锁屏控制中心,需满足系统级前提条件:android需开启锁屏通知、关闭电池优化、允许自启动;ios仅在通知触发时短暂显示图标;uos需启用通知中心并配置锁屏显示权限。

锁屏控制中心显示App图标需要系统级权限,不是前端代码能直接控制的
uni-app 本身没有 API 能让 App 图标出现在锁屏控制中心——这是操作系统(Android/iOS/UOS)对应用的展示策略,由系统通知中心和权限体系决定。你真正要做的,是确保 App 满足系统对“可出现在锁屏界面”的全部前提条件,并正确配置通知行为。
Android 设备上必须开启“锁屏显示通知”且不被省电策略拦截
很多用户以为开了通知就自动显示在锁屏,其实 Android 厂商(尤其华为、小米、OPPO)会额外拦截:
- 进入手机「设置 → 应用管理 → 你的 App → 通知管理」,确认「允许通知」已开启
- 向下滚动找到「在锁屏上显示」或「锁屏通知」开关,手动打开(默认常为关闭)
- 返回上一级,进「电池优化」或「省电策略」,将你的 App 设置为「无限制」或「允许后台活动」
- 检查「自启动」是否开启,否则锁屏后进程可能被杀,导致通知无法触发
- 部分机型(如小米 HyperOS)还需单独开启「后台弹出桌面」权限,否则锁屏时通知横幅不出现
iOS 和 UOS 的锁屏图标显示逻辑完全不同
iOS 不提供“锁屏控制中心显示 App 图标”这一功能——它只在锁屏顶部显示通知横幅,图标来自 Info.plist 中的 CFBundleIconFile 或 CFBundleIcons 配置,且仅当通知触发时才短暂出现;UOS 则明确要求:
- 先开启「启用通知中心」(全局开关,灰色即未启用)
- 在「通知 → 应用程序通知」里逐个点击你的 App,打开「在锁屏上显示」
- 系统更新类通知默认干扰锁屏展示,建议关闭「系统更新提醒 → 显示在锁屏上」
- 图标本身必须是
static/icons/app-icon-128.png这类路径下、无透明通道的 PNG,否则某些 UOS 版本渲染异常
uni-app 侧唯一可控的是通知触发时机和内容格式
你没法让图标“常驻”锁屏控制中心,但能让通知更大概率触发并带正确图标:
- 使用
uni.showNotification或厂商推送(华为 HMS、小米 MiPush)发送带 icon 字段的通知,图标路径必须是static/下相对路径,如"static/icons/notify-icon.png" - 云打包时,确保
manifest.json的app-plus → notifications → icon指向有效文件(Android 用 xxxhdpi 尺寸,iOS 不走此字段) - 避免在
onHide里调用uni.removeNotification清空所有通知——这会导致锁屏时无历史记录可展示 - 真机测试务必用发行版(云打包 APK/IPA),HBuilderX 真机调试不走完整通知链路,锁屏效果不可信
最容易被忽略的是:锁屏图标是否显示,最终取决于系统是否认为该 App “值得保留上下文”。频繁崩溃、被用户手动 Force Stop、或长期无交互,都会让系统降权——代码再规范也无效。











