pengchujin:Aerial 不合入酷开固件属性写入,保留原桌面识别与启动修正

在 Aerial PR #992 中,pengchujin 表示已决定只合入不改写固件属性的部分:读取 DEFAULT_HOMEPAGE 与 persist.service.homepage.* 识别原桌面,并在 Android 13 起、装有 com.tianci.system 的酷开上增加仅带 MAIN 的启动回退。不合入应用自行 setprop 写入主页属性及对应还原步骤,因为 8R734 实测不先还原便卸载会导致主页键黑屏,须重启恢复,应用卸载时无法自行改回属性。8R734/8R720 仍以 HOME 守护拉回,可能先显示酷开桌面。作者称改动已在 main,下个版本发布;其团队没有酷开 Android 13 实机,相关验证来自贡献者。

作者原文

@wzpan @penguin868 谢谢两位这么多轮的实测和整改。户主看过了,决定只合不碰固件属性的部分:

  • 合入(6b2842d,作者保留为 wzpan):CoocaaHome 读 DEFAULT_HOMEPAGE / persist.service.homepage.* 认出这台真正显示的酷开桌面,守护和「原桌面」磁贴优先用它;安卓 13 拦下带 LAUNCHER 的启动时,改用只带 MAIN 的 intent(仍限定在安卓 13 起装了 com.tianci.system 的酷开上)。两个 Robolectric 用例一并带上。
  • 不合:Aerial 自己 setprop 写 persist.service.model/homepage.*,以及对应的 restore.sh / agent.md 还原步骤。原因就是 8R734 上的实测:不先跑还原就卸载,主页键黑屏、只能重启;而用户在电视上直接卸载时不会跑还原,App 也没法在被卸载时把属性改回去。

所以 8R734 / 8R720 上开机和主页键仍由守护以 HOME 方式拉回(PR #1206),会先露一下酷开桌面。你们对 SkyBootIntent、standard 任务图层、home[0] 占位符的分析都写进了 docs/devices/skyworth-coocaa.md,并注明属性写法没合入的原因。以后如果能做到卸载后不黑屏(比如确认固件对指向不存在组件的属性会回落),可以再提。

我们这边:421 个单元测试通过;小米 MFTR0 装 release,守护、主页键、8 个信号源回归通过,守护认出的原桌面和改前一样。手上没有酷开安卓 13,合入的这部分只有你们的实测。改在 main 上,下个版本发布。这个 PR 先关闭,谢谢!