import os import subprocess import time def get_adb_devices(): list = [] result = subprocess.run(['adb', 'devices'], capture_output=True, text=True) devices = result.stdout.splitlines()[1:] # devices = result.stdout.splitlines()[1]#只有一个设备时 # print(type(devices),devices) for i in devices: #strip()方法用于删除字符串两端的空白字符 device = i.split('\tdevice')[0].strip() # print(type(device),device) if len(device) == 0: continue list.append(device) print(list) return list # return [device.split('\t')[0] for device in devices if device.strip()] # if __name__ == "__main__": # devices = get_adb_devices() # for device in devices: # print(device) def get_adb_devices2(): result = subprocess.run(['adb', 'devices'], capture_output=True, text=True) devices = result.stdout.splitlines()[1:] list = [] for device in devices: if device.strip(): dv = device.split('\t')[0] list.append(dv) print(list) return list def reboot(): exist = 0 no_exist = 0 device = devices[0] for i in range(1,10): #查看重启后软件包是否存在 result = subprocess.run(['adb','-s',device, 'shell', 'pm','list','packages','-3','|','grep','mysupend'], capture_output=True, text=True) result_line = result.stdout.splitlines()[0] print(result_line) if result_line == 'package:com.example.mysupend': exist += 1 else: no_exist += 1 subprocess.run(['adb', '-s', devices[0], 'shell', 'am', 'start', 'com.example.mysupend/.ChatActivity'], capture_output=True, text=True) subprocess.run(['adb', '-s', devices[0], 'shell', 'reboot'], capture_output=True, text=True) time.sleep(100) print('======================================') devices = get_adb_devices2() #第一次重启需要安装软件包 # subprocess.run(['adb','-s',devices[0],'shell', 'install','way.apk'], capture_output=True, text=True) reboot() os.system("pause")
07-24
501
