python批量安装apk2.0(承接上一篇:批量下载apk)

话不多说,直接上代码:

1、指定一个存放apk的本地路径

2、插上打开了usb调试的手机

##双进程安装,安装速度快了不是一点

#!/usr/bin/evn python
# -*- coding: utf-8 -*- 
#jojo_xia
import os 
import re
import threading

class GetApp:
    def __init__(self):
        pass
    def get_apkPath(self, path): 
        list_apk = []
        for file in os.listdir(path): 
            file_path = os.path.join(path, file) 
            list_apk.append(file_path)
        return list_apk

    def get_devices(self):
        rst = os.popen("adb devices").read()
        devices = re.findall(r'(.*?)\s+device',rst)
        if len(devices) > 1:
            deviceIds = devices[1:]
            return deviceIds
        else:
            print('没有找到手机,请检查')
            return None

    def install_apk(self,deviceIds,list_apk):
        for i in list_apk:
            apk_name = i.split("\\")[-1]
            cmd_install = "adb -s %s install -r -d -t %s"%(deviceIds[0], i)
            print("%s--正在安装:%s"%(deviceIds[0], apk_name))
            os.system(cmd_install)

if __name__ == '__main__':
    path = "C:\\Users\\xiaqiao\\Desktop\\共享"
    GA = GetApp()
    device = GA.get_devices()
    path_apk = GA.get_apkPath(path)
    path_apk1 = path_apk[:len(path_apk)//2]
    path_apk2 = path_apk[len(path_apk)//2:]
    t1 = threading.Thread(target=GA.install_apk, args=(device,path_apk1))
    t2 = threading.Thread(target=GA.install_apk, args=(device,path_apk2))
    t1.setDaemon(True)
    t1.start()
    t2.setDaemon(True)
    t2.start()
    t1.join()
    t2.join()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jojo_xia

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值