Python如何实现:实时检查app是否安装完成?

#!/usr/bin/env python
#encoding: utf-8


import os
import time

appPackageName = 'XXXXXX'
appPackageList = os.popen('adb shell pm list packages').read()

def check_app_installed():

    if appPackageName in appPackageList:
        print('app已安装!')
    else:
        print('未检测到app安装程序,开始执行安装......')
        os.popen('adb install D:/Packages/XXX.apk')
        a = 0
        while appPackageName not in appPackageList:
            a += 1
            print('正在安装,已进行', a, '秒')
            time.sleep(1)
            continue
        print('安装完成!')


check_app_installed()

 

这是我具体的实现,执行脚本后,结果可以正常安装app,但是安装完成后无法跳出循环

这次看明白了吧..

 


import os
appPackageName = "package:com.github.uiautomator"
appPackageList = os.popen('adb shell pm list packages').readlines()

for i in appPackageList:
    if appPackageName in i:
        print(appPackageName,'存在于',i)
    else:
        print('不存在')

 

你加了continue又返回了 , 没有判断就会一直返回循环。 你直接在print后面加个break就行了

 

#!/usr/bin/env python
#encoding: utf-8


import os
import time

appPackageName = 'XXX'
appPackageList = os.popen('adb shell pm list packages').read()

def check_app_installed():
    a = 0
    while True:
        if appPackageName in appPackageList:
            print('app已安装!')
            break
        else:
            os.popen('adb install D:/Packages/XXX.apk')
            a += 1
            print('正在安装,已进行', a, '秒')
            time.sleep(1)
            
check_app_installed()

试了一下,效果和之前一样,还是跳不出循环