fix: de_foreground_app fallback mFocusedApp(MIUI 过渡期 mCurrentFocus=null 时前台解析为空)

This commit is contained in:
2026-09-04 13:52:34 +08:00
parent fab7e2b11a
commit e5018c4e45
+8 -4
View File
@@ -40,10 +40,14 @@ def stop_app(serial, package):
def foreground_app(serial):
"""当前前台 App 包名(dumpsys window 解析;失败返回空)。"""
out = _adb(serial, "dumpsys", "window", timeout=15)
m = re.search(r"mCurrentFocus=.*?([\w.]+)/", out or "")
return m.group(1) if m else ""
"""当前前台 App 包名(dumpsys window;mCurrentFocus 为空时 fallback mFocusedApp)。"""
out = _adb(serial, "dumpsys", "window", timeout=15) or ""
m = re.search(r"mCurrentFocus=.*?([\w.]+)/", out)
if m:
return m.group(1)
# 部分 MIUI 焦点在 IME/过渡时 mCurrentFocus=null,用 mFocusedApp 兜底
m2 = re.search(r"mFocusedApp=.*?([\w.]+)/", out)
return m2.group(1) if m2 else ""
def list_apps(serial, keyword=""):