当前位置: 首页 > news >正文

android10 卸载应用出现回退栈异常问题

打开设置,打开APP1,使用adb uninstall 卸载APP1/或者杀掉APP1进程,没有回到设置而是回到了桌面

  1. 抓取eventlog,查看ams/wms打印,发现“am_focused_stack: appDied leftTaskHistoryEmpty”
  2. 源码中搜索“leftTaskHistoryEmpty”,发现ActivityStack中当activity stack清空时会回到launcher
  3. 去掉回到launcher逻辑即可
  4. 对比 android13没有该现象,Android10原生设计逻辑如此,高版本wms和ams逻辑变化较大
diff --git a/services/core/java/com/android/server/wm/ActivityStack.java b/services/core/java/com/android/server/wm/ActivityStack.java
index d1c767aeb444..0d1fa0507b63 100644
--- a/services/core/java/com/android/server/wm/ActivityStack.java
+++ b/services/core/java/com/android/server/wm/ActivityStack.java
@@ -5450,7 +5450,7 @@ class ActivityStack extends ConfigurationContainer {&& mRootActivityContainer.isTopDisplayFocusedStack(this)) {String myReason = reason + " leftTaskHistoryEmpty";if (!inMultiWindowMode() || adjustFocusToNextFocusableStack(myReason) == null) {
-                    getDisplay().moveHomeStackToFront(myReason);
+                    // getDisplay().moveHomeStackToFront(myReason);}}if (isAttached()) {

相关文章:

  • gRPC 的使用和了解
  • 01 Business Process Architecture: From Value Chain to Business Process
  • 蓝桥杯 14. 奇怪的数列
  • 在Azure Databricks中实现缓慢变化维度(SCD)的三种类型
  • Android 系统的兼容性测试 - CTS
  • 【Part 2安卓原生360°VR播放器开发实战】第二节|基于等距圆柱投影方式实现全景视频渲染
  • 探索大语言模型(LLM):语言模型从海量文本中无师自通
  • ASP.NET8.0入门与实战
  • Netmiko 源码关键流程图
  • Web Workers
  • 更快的图像局部修改与可控生成:Flex.2-preview
  • 多级缓存架构设计与实践经验
  • (即插即用模块-特征处理部分) 四十二、(2024 TPAMI) FreqFusion 频率特征融合
  • 睿享会丨走进西安御品轩
  • 无人机超声波避障技术要点与难点!
  • 攻击 WordPress 目标的 5 种方法
  • 海底世界-第16届蓝桥第4次STEMA测评Scratch真题第5题
  • JVM指令手册:深入理解字节码执行机制
  • 每日c/c++题 备战蓝桥杯(P2392 kkksc03考前临时抱佛脚)
  • adb devices 报权限错误
  • 朝鲜派兵库尔斯克是否有助于解决乌克兰危机?外交部回应
  • 商超展销延长、专区专柜亮相……上海“外贸拓内销”商品与市民见面
  • 人民日报头版:上海纵深推进浦东高水平改革开放
  • 四川苍溪县教育局通报“工作人员辱骂举报学生”:停职检查
  • 艺术与医学的对话,瑞金医院办了一个展览
  • 蜀道考古调查阶段性成果发布,新发现文物遗存297处