使用Python脚本和ADB命令实现卸载App


Posted in Python onFebruary 10, 2017

前言

本文实现一个 Python 脚本,用来批量卸载模拟器或者实体机上面的 App 以及清除 LogCat 缓存。

开发 Android 的朋友,模拟器或者手机里面常常有大量调试的 Demo,对于手机来说还好,可是对于模拟器,有可能就会造成调试速度以及启动速度的下降。而且模拟器中 App 一个一个删除也是很麻烦。利用 ADB 命令,我们可以做很多事,其中就包括批量操作模拟器或者手机上的 App。当然包括删除操作啦。利用 Python 脚本和 ADB shell 命令以及 AS 自带的 CMD 窗口,我们就可以将这一切浓缩成一个命令行啦。

核心代码

# 删除所有你指定包名的 APP
def delAllapp( ):
 print 'start delete all your app in your Phone or Simulator '
 os.popen('adb wait-for-device');
 corename = raw_input("input your app package corename:")
 oriPackages = os.popen('adb shell pm list packages {name}'.format(name=corename));
 # list all PackageName
 for oriPackage in oriPackages:
  deletePackage = oriPackage.split(':')[1]
  os.popen('adb uninstall ' + deletePackage );
  print deletePackage + "is deleted"
  
# 删除所有你指定包名的特定 APP
def listAllpackage( ):
 i = 0
 os.popen('adb wait-for-device');
 corename = raw_input("input your app package corename:")
 oriPackages = os.popen('adb shell pm list packages {name}'.format(name=corename));
 
 for oriPackage in oriPackages:
  deletePackage = oriPackage.split(':')[1]
  print str(i) + ":" + deletePackage
  deleteList.append(deletePackage)
  i += 1

# 删除指定 App
def deleteApp(number):
 os.popen('adb uninstall ' + deleteList[number] );
 print 'delete '+ deleteList[number] + "success"
 
# 清除 LogCat 缓存 
def clearLogcat( ):
 print 'start clear logcat buffer in your Phone or Simulator'
 os.popen('adb wait-for-device');
 os.popen('adb logcat -c');
 print 'logcat is cleared success'

效果实现

使用Python脚本和ADB命令实现卸载App

使用方式

  1. 确保你的 AS 能够使用 ADB 命令
  2. 配置 Python 2.7 环境(3+ 应该也没有问题)
  3. 在 AS 提供的 CMD 中找到当前脚本路径 输入: python unistall.py
  4. 根据命令提示输入你想要删除 App 的包的核心关键字,如:com.example.RxCacheDemo ,输入 example 即可(每个人 AS 的这个配置应该都是一样的)
  5. 以上步骤完成之后会有提示 删除成功与否。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

Python 相关文章推荐
Python(TensorFlow框架)实现手写数字识别系统的方法
May 29 Python
Python运行不显示DOS窗口的解决方法
Oct 22 Python
详解Python计算机视觉 图像扭曲(仿射扭曲)
Mar 27 Python
浅谈Pytorch中的torch.gather函数的含义
Aug 18 Python
PyQT5 emit 和 connect的用法详解
Dec 13 Python
PyTorch中反卷积的用法详解
Dec 30 Python
检测tensorflow是否使用gpu进行计算的方式
Feb 03 Python
pip install 使用国内镜像的方法示例
Apr 03 Python
python字符串的index和find的区别详解
Jun 20 Python
基于python实现操作git过程代码解析
Jul 27 Python
通过实例解析python subprocess模块原理及用法
Oct 10 Python
python 如何读、写、解析CSV文件
Mar 03 Python
Python中str is not callable问题详解及解决办法
Feb 10 #Python
python用Pygal如何生成漂亮的SVG图像详解
Feb 10 #Python
Ubuntu下创建虚拟独立的Python环境全过程
Feb 10 #Python
简单谈谈Python中的几种常见的数据类型
Feb 10 #Python
Python使用QQ邮箱发送Email的方法实例
Feb 09 #Python
python3中bytes和string之间的互相转换
Feb 09 #Python
python实现下载文件的三种方法
Feb 09 #Python
You might like
PHP通用检测函数集合
2011/02/08 PHP
PHP的cURL库功能简介 抓取网页、POST数据及其他
2011/04/07 PHP
php如何解决无法上传大于8M的文件问题
2014/03/10 PHP
PHP自定义函数判断是否为Get、Post及Ajax提交的方法
2017/07/27 PHP
浅谈laravel orm 中的一对多关系 hasMany
2019/10/21 PHP
js中top、clientTop、scrollTop、offsetTop的区别 文字详细说明版
2011/01/08 Javascript
javascript之典型高阶函数应用介绍
2013/01/10 Javascript
jQuery向上遍历DOM树之parents(),parent(),closest()之间的区别
2013/12/02 Javascript
js中switch case循环实例代码
2013/12/30 Javascript
jQuery CSS()方法改变现有的CSS样式表
2014/09/09 Javascript
jQuery+PHP星级评分实现方法
2015/10/02 Javascript
JavaScript使用DeviceOne开发实战(四)仿优酷视频应用
2015/12/02 Javascript
Bootstrap每天必学之附加导航(Affix)插件
2016/04/25 Javascript
jQuery获取及设置表单input各种类型值的方法小结
2016/05/24 Javascript
jquery插件bootstrapValidator数据验证详解
2016/11/09 Javascript
使用DeviceOne实现微信小程序功能
2016/12/29 Javascript
jQuery倒计时代码(超简单)
2017/02/27 Javascript
深度了解vue.js中hooks的相关知识
2019/06/14 Javascript
vue-router之解决addRoutes使用遇到的坑
2020/07/19 Javascript
Python BS4库的安装与使用详解
2018/08/08 Python
Selenium chrome配置代理Python版的方法
2018/11/29 Python
解决python文件双击运行秒退的问题
2019/06/24 Python
用python打印菱形的实操方法和代码
2019/06/25 Python
jupyter notebook oepncv 显示一张图像的实现
2020/04/24 Python
Python爬虫小例子——爬取51job发布的工作职位
2020/07/10 Python
HTML5边玩边学(2)基础绘图实现方法
2010/09/21 HTML / CSS
Html5基于canvas实现电子签名并生成PDF文档
2020/12/07 HTML / CSS
美国内衣品牌:Leonisa
2016/08/14 全球购物
SKECHERS官方旗舰店:美国舒适运动休闲品牌
2017/12/22 全球购物
八年级数学教学反思
2014/01/31 职场文书
自荐信如何制作?
2014/02/21 职场文书
年度评优评先方案
2014/06/03 职场文书
机关党员四风问题个人整改措施
2014/10/26 职场文书
学校中秋节活动总结
2015/03/23 职场文书
律师函格式范本
2015/05/27 职场文书
小学班长竞选稿
2015/11/20 职场文书