先运行APP,如果失败,先运行连接设备代码,再启动下面
# -*- coding: utf-8 -*-
#-------------------------------------------------------------------------------
# @Name: name
# @Description:
# @Author: springbocai
# @Date: 2019/5/21
#-------------------------------------------------------------------------------
import os
class GetBoxPagename:
# 动态获取mobile devices的值:
def __init__(self):
pass
def getPageName(self):
youyong = []
pkname = []
shell = 'adb shell dumpsys window windows | findstr name'
deviceName1 = os.popen(shell).readlines()
for line in deviceName1:
if '/' in line:
youyong.append(line)
m = len(youyong)
n = youyong[0]
s = n.find('/')
pk = (n[28:s])
pkname.append(pk)
return pkname
def getQdName(self):
qdname = []
youyon = []
shell = 'adb shell dumpsys window windows | findstr name'
deviceName2 = os.popen(shell).readlines()
for d in deviceName2:
if '/' in d:
youyon.append(d)
n = youyon[0]
s = n.find('/')
qidong = n[s + 1:-2]
qdname.append(qidong)
return qdname
# elif m == 2:
# n = youyong[0]
# s = n.find('/')
# print(s)
# pk = (n[28:s])
# print(pk)
# qidong = n[s + 1:-2]
# print(qidong)
# print(pk)
# index = mount - 2
# print(index)
# while i < index:
# # print(deviceName1)
# # print(type(deviceName1))
# deviceNamei = deviceName1[i + 1]
# # print(deviceNamei)
# deviceNamea.append(deviceNamei[:-8])
# print(len(deviceName))
# i=0
# i+=1
# shell = 'adb devices'
# deviceName1 = os.popen(shell).readlines()
# print(deviceName1)
# print(type(deviceName1))
# deviceName2 = deviceName1[i+1]
# print(deviceName2)
# deviceName = deviceName2[:6]
# print(deviceName)
# index = len(deviceName)
# print(deviceName)
# print(type(deviceName))
# print(index)
# if index == 1:
# deviceName = deviceNamea
# # print(deviceName+"0")
# print(type(deviceName))
# elif index == 2:
# # deviceName = deviceName[0].split('\n')[1]
# # print(deviceName)
# # print(deviceName[i + 1])
# # print(deviceName[2])
# if i == index-1:
# return deviceNamea
#
# # print(type(deviceName))
# # print(deviceName + "1")
# elif index == 3:
# deviceName = deviceNamea[1].split('\n')[0]
# # print(deviceName + "2")
# else:
# print('请链接设备.......')
# i += 1
# print(deviceName)
if __name__ == '__main__':
x = GetBoxPagename().getPageName()
print(x)
y = GetBoxPagename().getQdName()
print(y)
其他方式:
前提在安卓SDK目录下执行
找到自己的路径
方法一:直接
aapt dump badging C:\apk\kaoyanbang.apk
方法二:
appPackage如下,
aapt dump badging C:\apk\kaoyanbang.apk | find "package"
appActivity如下: