Repository navigation
2.2.0 Dev 9
Pre-release
Pre-release
2.2.0 Dev 9
修复超级岛偶发不弹出的问题。
根因
App 走「SystemUI 代发」路径上岛时,把整个 miui.focus.param extras 打包进跨应用广播发给 SystemUI。
其中岛图标未做降采样,实测单条 parcel 达 329624 字节,超出 Binder 单事务安全上限,
BroadcastQueue 在投递阶段抛 TransactionTooLargeException 把广播整个丢弃。
因 sendBroadcast 无回执,App 侧日志仍记「岛通知已提交系统(SystemUI 代发)」——
日志显示成功,实际岛没出现。进 APP 触发补扫重发时才偶然补上。
改动
- 岛图标等比降采样到 96×96,并去掉只写不读的重复图标副本
- 代发广播发送前实测 parcel 体积,超 64KB 直接判定失败并回退自身路径(不再石沉大海)
- 新增投递回执:SystemUI 侧 notify 成功才回发确认,App 侧超时未收到即明确记为失败——上岛状态不再靠猜
- 代发通道握手提前到 App 启动与保活服务建立,并在初始化时主动探测 + 延迟重试
(此前每个进程生命周期的第一条岛通知必然失败) - 修一处初始化失败后永不重试的问题
- 上岛日志措辞修正:「已提交」改为「待回执」,不再自称成功
安装后请重启一次手机,让 SystemUI 重新加载模块。