pythonのマルチデバイスパッケージインストールアプリ

pythonのマルチデバイスパッケージインストールアプリ

コード

1つの は/ usr / binに/ ENVパイソン!
2  - * -エンコーディング:UTF-8 - * - 
3  インポートOS 
 4  インポート時間 
 5  からマルチプロセッシングインポートプール 
 6リスト= [] 
 7  
8  DEF getDevicesAll(): 
 9      获取装置数量和名称
10台の      デバイス= [] 
 11      トライ12          のため dName_  os.popen(" ADBデバイス" ): 
 13              であれば " \ tの"  dName_: 
 14                  場合 dName_.find(" エミュレータ")< 0: 
 15                      devices.append(dName_.split(" \ tの" )[0]) 
 16          devices.sort(CMP =なし、キー=無し、逆= 偽) 
 17          プリント(装置) 
 18      を除く19の         パス 
20      プリント(U " \ N设备名称:%S \ N总数量:%S台"(デバイス、LEN(デバイス))) 
 21の     リターンデバイス 
 22  
23  DEFquickinstall(デバイス):
 24      パッケージ名= " com.ishugui " 
25      卸载原有APK 
26      試み27  
28          os.system(' ADB -s ' +デバイス+ ' アン%S 'パッケージ名)
 29          os.system(' ADB -s ' +デバイス+ ' アンインストール%S '%のパッケージ名)
 30          プリント(デバイス+ " 卸载成功する\ n " 31      を除く32         印刷(+デバイス" アンインストールが\ N-失敗" 33が 
34である     試み35          印刷' ----- -----一覧' 、リスト)
 36  
[37           I リスト: 
 38です              os.system(ADB -sは、' + +デバイス' インストール" + I)
 39  
40      を除い41で         印刷(+デバイス" N- \を失敗したインストール" 42で     印刷(+デバイス正常にインストール\ N- " 43は 
44がされて DEF (デバイスは、)はqainstall:
 45      のstartTimeは= time.time() 
 46があるが      、プール=プール(2) 作成8つのタスクプール
47      結果= pool.map(QuickInstall、デバイス)
 48      ENDTIME = time.time() 
 49      pool.close() 
 50      pool.join() 
 51が     印刷(終了時刻-のstartTime) 印刷時間
52は 
53れる DEF (ファイル名)get_apk:
 54である     、グローバル  リスト
 55      #1 = 'F:/ダウンロード/ APK' filesname 
56      インストールパッケージ得る
57はある     プリント(filesname)
 58      のために親にdirnames、filnames os.walk(filesname):
 59           FILNAME filnames:
 60              パス= os.path.join(親、FILNAME)が
 61である             list.append(経路)
 62れます     印刷' ----- -----一覧' 、リスト)
 63が     リターン  リスト
 64  
65  パケットパス
66 filesname = ' F:/ダウンロード/ APK ' 
67の #は、インストールパッケージ取得
68  印刷(filesname)
 69  のための親にdirnames、filnames os.walk(filesname):
 70       filname filnames:
 71          パス= os.path.join(親、filname)
 72          list.append(経路)
 73  プリント' - ---リスト----- ' リスト)
 74  
75  
76  なら __name__ == " __main__ " 77  
78      filesname = ' F:/ダウンロード/ APK ' 
79      リスト= get_apk(filesname)
80  
81      試し82          デバイス= getDevicesAll() 
 83      を除い84          印刷" デバイスエラーが出る" 85の      RES = INPUT(" スタートアップデート1を入力してください。" 86  
87      IF int型(RES)== 1 88          のtry 89              qainstall(デバイス)
 90          を除い91              印刷" 更新に失敗しました" 92      タッチ(デバイス)

 

おすすめ

転載: www.cnblogs.com/lisa2016/p/11209215.html