# -*- coding: utf-8 -*- import subprocess, time import frida ADB = r"C:\Users\Administrator\AppData\Local\Android\Sdk\platform-tools\adb.exe" PKG = "my.com.tngdigital.ewallet" def adb(*a): return subprocess.run([ADB, *a], capture_output=True, text=True) def on_msg(m, d): line = m.get("payload") if m.get("type") in ("send", "log") else str(m) print(line, flush=True) d = frida.get_usb_device(10) adb("shell", "am", "force-stop", PKG); time.sleep(1) pid = d.spawn([PKG]) s = d.attach(pid) sc = s.create_script(open("mini_timer.js", encoding="utf-8").read()) sc.on("message", on_msg) sc.load() print("resume", pid, flush=True) d.resume(pid) for i in range(20): time.sleep(1) p = adb("shell", "pidof", PKG).stdout.strip() print("t=%d pid=%s" % (i+1, p or "DEAD"), flush=True) if not p: break try: s.detach() except: pass