热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python安卓吾爱_python调用adb脚本来实现群控安卓手机初探

[Python]纯文本查看复制代码#!usrbinpython#-*-coding:utf-8-*-importosrunapp_namecom.tencent.mobil

[Python] 纯文本查看 # !/usr/bin/python

# -*- coding:utf-8 -*-

import os

runapp_name = "com.tencent.mobileqq/.activity.SplashActivity"

def getDevicesAll():

#获取所有的设备列表

devices = []

try:

for dName_ in os.popen("adb devices"):

if "\t" in dName_:

if dName_.find("emulator") <0:

devices.append(dName_.split("\t")[0])

devices.sort(cmp&#61;None, key&#61;None, reverse&#61;False)

except:

pass

print("设备名称: %s 总数量:%s台" % (devices, len(devices)))

return devices

def find_top_app(devices):

# 循环输入顶层应用

for dName in devices:

try:

out &#61; os.popen(&#39;adb shell "dumpsys activity | grep "mFocusedActivity""&#39;).read()

print(dName&#43;"的当前顶层应用是&#xff1a;"&#43;out)

except:

print(dName &#43; "关闭失败")

def runtest(devices):

# 打开应用

for dName in devices:

try:

os.popen("adb -s " &#43; dName &#43;" shell am start -n "&#43;runapp_name)

print("启动成功")

except:

print(dName&#43;"打开失败")

if __name__&#61;&#61;"__main__":

while True:

try:

devices &#61; getDevicesAll()

except:

print("获取设备出错")

res &#61; input("输入1查看当前的顶层app;2启动qq:")

if int(res)&#61;&#61;1:

try:

find_top_app(devices)

except:

print("启动错误")

elif int(res)&#61;&#61;2:

try:

runtest(devices)

except:

print("启动错误")



推荐阅读
  • 本文探讨了如何使用Scrapy框架构建高效的数据采集系统,以及如何通过异步处理技术提升数据存储的效率。同时,文章还介绍了针对不同网站采用的不同采集策略。 ... [详细]
  • 本文探讨了在已知最终数组尺寸不会超过5000x10的情况下,如何利用预分配和调整大小的方法来优化Numpy数组的创建过程,以提高性能并减少内存消耗。 ... [详细]
  • 本文介绍了如何使用 Python 的 Pyglet 库加载并显示图像。Pyglet 是一个用于开发图形用户界面应用的强大工具,特别适用于游戏和多媒体项目。 ... [详细]
  • 本文介绍了使用Python和C语言编写程序来计算一个给定数值的平方根的方法。通过迭代算法,我们能够精确地得到所需的结果。 ... [详细]
  • 本文基于Java官方文档进行了适当修改,旨在介绍如何实现一个能够同时处理多个客户端请求的服务端程序。在前文中,我们探讨了单客户端访问的服务端实现,而本篇将深入讲解多客户端环境下的服务端设计与实现。 ... [详细]
  • 1、编写一个Java程序在屏幕上输出“你好!”。programmenameHelloworld.javapublicclassHelloworld{publicst ... [详细]
  • Python网络编程:深入探讨TCP粘包问题及解决方案
    本文详细探讨了TCP协议下的粘包现象及其产生的原因,并提供了通过自定义报头解决粘包问题的具体实现方案。同时,对比了TCP与UDP协议在数据传输上的不同特性。 ... [详细]
  • ArcBlock 发布 ABT 节点 1.0.31 版本更新
    2020年11月9日,ArcBlock 区块链基础平台发布了 ABT 节点开发平台的1.0.31版本更新,此次更新带来了多项功能增强与性能优化。 ... [详细]
  • 本文探讨了Python中的enchant模块及其提供的dict_exists()函数,该函数用于检测特定语言词典的可用性。 ... [详细]
  • 本文探讨了Linux环境下线程私有数据(Thread-Specific Data, TSD)的概念及其重要性,介绍了如何通过TSD技术避免多线程间全局变量冲突的问题,并提供了具体的实现方法和示例代码。 ... [详细]
  • 使用Python构建网页版图像编辑器
    本文详细介绍了一款基于Python开发的网页版图像编辑工具,具备多种图像处理功能,如黑白转换、铅笔素描效果等。 ... [详细]
  • 本文分享了作者在使用LaTeX过程中的几点心得,涵盖了从文档编辑、代码高亮、图形绘制到3D模型展示等多个方面的内容。适合希望深入了解LaTeX高级功能的用户。 ... [详细]
  • 2019年独角兽企业招聘Python工程师标准课程概览
    本文详细介绍了2019年独角兽企业在招聘Python工程师时的标准课程内容,包括Shell脚本中的逻辑判断、文件属性判断、if语句的特殊用法及case语句的应用。 ... [详细]
  • 在使用 PyInstaller 将 Python 应用程序打包成独立的可执行文件时,若项目中包含动态加载的库或插件,需要正确配置 --hidden-import 和 --add-binary 参数,以确保所有依赖项均能被正确识别和打包。 ... [详细]
  • Go语言实现文件读取与终端输出
    本文介绍如何使用Go语言编写程序,通过命令行参数指定文件路径,读取文件内容并将其输出到控制台。代码示例中包含了错误处理和资源管理的最佳实践。 ... [详细]
author-avatar
再见傻瓜傻瓜_299
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有