#coding=utf-8 """ author:solomon_zj datatime:2023-6-18 explain: pip install adbutils 安装adbutils库 monkey_exe:导入运行monkey的前置文件数据并进行monkey执行 tips:os.system() 运行monkey命令会产生等待过程 os.popen() 运行monkey命令不会阻塞进行等待 """ import adbutils,os def get_devices(): devices = [] devices_cls = adbutils.adb.device_list() for i in devices_cls: devices.append(i.serial) return devices def monkey_exe(): devices = get_devices() print(f"当前共有{len(devices)}设备") for i in devices: local_file = os.getcwd() + os.sep + "local.prop" blacklist_file = os.getcwd() + os.sep + "blacklist.txt" os.system(f"adb -s {i} root") os.system(f"adb -s {i} shell settings put system screen_off_timeout 600000") os.system(f"adb -s {i} shell setprop persist.shutdown_switch true") os.system(fr"adb -s {i} push {local_file} /data/local.prop") os.system(f"adb -s {i} shell chmod 644 /data/local.prop") os.system(fr"adb -s {i} push {blacklist_file} /data/") os.popen(fr'adb -s {i} shell "monkey --pkg-blacklist-file /data/blacklist.txt --kill-process-after-error --pct-syskeys 0 --pct-rotation 0 --ignore-crashes --ignore-native-crashes --ignore-timeouts --ignore-security-exceptions --throttle 1500 -v -v -v -s 5 99999999 2>/sdcard/error_black.txt 1>/sdcard/info_black.txt"') print(f"已完成设备{i}的monkey执行操作") if __name__ == "__main__": monkey_exe()