锁屏下的灵动岛行为——亮屏和锁屏时的不同表现
三种锁屏场景
场景一:亮屏锁屏
手机按电源键亮屏但还没解锁(显示锁屏界面)。这是最常见的锁屏场景:
- dynamicSpot 默认在亮屏锁屏上显示灵动岛
- 有通知时灵动岛自动展开显示内容
- 长按展开、短按跳转的交互和解锁后一致
场景二:息屏(黑屏)
手机完全黑屏(未亮屏):
- 灵动岛不会显示——黑屏状态下任何悬浮窗都不可见
- 但可以配合通知灯替代功能(见 LED 替代通知灯)让屏幕边缘有呼吸灯效果
- 或者用系统的 AOD(Always On Display)来显示通知摘要
场景三:AOD(息屏显示)
开启了系统息屏显示后:
- Android 原生 AOD 会显示时间、电量、通知小图标
- dynamicSpot 的灵动岛通常不会出现在 AOD 上(AOD 有独立的渲染层,第三方悬浮窗无法覆盖)
- 但通知灯替代功能可以在 AOD 上配合使用
锁屏不显示灵动岛怎么办
如果亮屏锁屏后灵动岛没有出现,依次排查:
第一层:dynamicSpot 设置
dynamicSpot → Lockscreen → Enable on Lockscreen → 确保已开启。
第二层:系统权限
很多品牌需要额外授予锁屏悬浮窗权限:
| 品牌 | 权限名称/路径 |
|---|---|
| 通用 Android | 设置 → 锁屏 → 允许在锁屏上显示 |
| 小米澎湃OS | 设置 → 应用设置 → 动态Spot → 通知 → 锁屏通知 |
| 华为鸿蒙 | 设置 → 通知和状态栏 → 锁屏通知 → 允许在锁屏上显示 |
| OPPO | 设置 → 通知 → 锁屏通知 |
| vivo | 设置 → 通知与状态栏 → 锁屏通知 |
| 三星 | 设置 → 锁屏 → 锁屏样式 → 允许通知显示 |
第三层:无障碍服务
锁屏悬浮窗的显示依赖无障碍服务。检查:
- 系统设置 → 辅助功能 → 已下载的服务 → dynamicSpot 已开启
- 没有被后台清理
锁屏隐私设置
如果不想在锁屏时让别人看到你的消息内容:
dynamicSpot → Lockscreen → Hide Content on Lockscreen → 开启
开启后,锁屏上灵动岛只显示应用图标和"新通知",不会显示消息预览。解锁后才显示完整内容。