python获取安卓app性能参数并绘图,,from matpl


from matplotlib import pyplot as pltfrom matplotlib import animationimport os,re# import numpy as  npdef getTotalPss():    lines=os.popen("adb shell dumpsys meminfo com.rn_kiosk").readlines()    # print(lines)    total="TOTAL"    for line in lines:        if re.findall(total,line):            lis=line.split(‘ ‘)            # print(lis)            while ‘‘ in lis:                lis.remove(‘‘)            return lis[1]            # print(lis[1])def getCpu():    li = os.popen("adb shell top -m 100 -n 1 -s cpu").readlines()    name = "com.rn_kiosk"     for line in li:        if re.findall(name,line):            cuplist = line.split(" ")            # print(cuplist)            if cuplist[-1].strip() == ‘com.rn_kiosk‘:              while ‘‘ in cuplist: # 将list中的空元素删除                cuplist.remove(‘‘)              return(float(cuplist[2].strip(‘%‘))) #去掉百分号,返回一个float            # print(cuplist)            # print((cuplist[2].strip(‘%‘)))         # getCpu()fig = plt.figure()ax1 = fig.add_subplot(2,1,1,xlim=(0, 1000), ylim=(0, 350))ax2 = fig.add_subplot(2,1,2,xlim=(0, 1000), ylim=(0, 100))line,= ax1.plot([], [], lw=2)line2,= ax2.plot([], [], lw=2)x=[]y=[]y2=[]def init():    line.set_data([], [])    line2.set_data([], [])     return line,line2def getx():    t = "0"     return tdef animate(i):     x.append(int(getx())+i)     y.append(int(getTotalPss())/1024)    y2.append(getCpu())    print(x,y)     line.set_data(x,y)    line2.set_data(x,y2)    return line,line2anim1 = animation.FuncAnimation(fig, animate, init_func=init, frames=1000, interval=30)plt.show()

python获取安卓app性能参数并绘图

评论关闭