[Android黑屏] 双屏幕副屏Launcher消失

50 阅读1分钟

问题: 设备双屏幕,副屏从应用返回Launcher黑屏,有SystemUI -> 异常退出问题

分析:

  1. dumpsys window animator观察Window是否存在 => 不存在,异常退出
  2. 分析log,是否crash(FATAL EXCEPTION, Fatal signal) => 排除
  3. event log观察黑屏Activity所在task(logcat -b events | grep -E 'wm_|am_') => task被remove,原因是remove-hidden-task
  4. 查看源码中对应逻辑 => 被当做无法返回的Task清理掉

方案:

  • 通过多实例(需要多用户)实现Launcher Task隔离,避免Task被认为无法返回
  • 或通过多个Launcher Activity实现