fix: de_foreground_app fallback mFocusedApp(MIUI 过渡期 mCurrentFocus=null 时前台解析为空)
This commit is contained in:
@@ -40,10 +40,14 @@ def stop_app(serial, package):
|
|||||||
|
|
||||||
|
|
||||||
def foreground_app(serial):
|
def foreground_app(serial):
|
||||||
"""当前前台 App 包名(dumpsys window 解析;失败返回空)。"""
|
"""当前前台 App 包名(dumpsys window;mCurrentFocus 为空时 fallback mFocusedApp)。"""
|
||||||
out = _adb(serial, "dumpsys", "window", timeout=15)
|
out = _adb(serial, "dumpsys", "window", timeout=15) or ""
|
||||||
m = re.search(r"mCurrentFocus=.*?([\w.]+)/", out or "")
|
m = re.search(r"mCurrentFocus=.*?([\w.]+)/", out)
|
||||||
return m.group(1) if m else ""
|
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=""):
|
def list_apps(serial, keyword=""):
|
||||||
|
|||||||
Reference in New Issue
Block a user