使用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进行数据科学工作的简单入门教程
Apr 01 Python
详解在Python的Django框架中创建模板库的方法
Jul 20 Python
python进阶_浅谈面向对象进阶
Aug 17 Python
python检测空间储存剩余大小和指定文件夹内存占用的实例
Jun 11 Python
Python实现重建二叉树的三种方法详解
Jun 23 Python
Python实现的多叉树寻找最短路径算法示例
Jul 30 Python
python实现机器学习之元线性回归
Sep 06 Python
Python使用pymongo库操作MongoDB数据库的方法实例
Feb 22 Python
python+webdriver自动化环境搭建步骤详解
Jun 03 Python
python分数表示方式和写法
Jun 26 Python
使用python实现对元素的长截图功能
Nov 14 Python
pycharm软件实现设置自动保存操作
Jun 08 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
获得Google PR值的PHP代码
2007/01/28 PHP
理解和运用PHP中的多态性[译]
2011/08/02 PHP
symfony2.4的twig中date用法分析
2016/03/18 PHP
laravel学习笔记之模型事件的几种用法示例
2017/08/15 PHP
alixixi runcode.asp的代码不错的应用
2007/08/08 Javascript
javascript 尚未实现错误解决办法
2008/11/27 Javascript
javascript 图片上一张下一张链接效果代码
2010/03/12 Javascript
js控制表单奇偶行样式的简单方法
2013/07/31 Javascript
使用POST方式弹出窗口的两种方法示例介绍
2014/01/29 Javascript
JS判断当前页面是否在微信浏览器打开的方法
2015/12/08 Javascript
jQuery时间插件jquery.clock.js用法实例(5个示例)
2016/01/14 Javascript
浅谈几种常用的JS类定义方法
2016/06/08 Javascript
vue.js+boostrap项目实践(案例详解)
2016/09/21 Javascript
JavaScript 继承详解(五)
2016/10/11 Javascript
AngularJS+bootstrap实现动态选择商品功能示例
2017/05/17 Javascript
利用node.js制作命令行工具方法教程(一)
2017/06/22 Javascript
webpack使用 babel-loader 转换 ES6代码示例
2017/08/21 Javascript
使用node.js对音视频文件加密的实例代码
2017/08/30 Javascript
react router 4.0以上的路由应用详解
2017/09/21 Javascript
vue mintui-Loadmore结合实现下拉刷新和上拉加载示例
2017/10/12 Javascript
vue 自定义组件 v-model双向绑定、 父子组件同步通信的多种写法
2017/11/27 Javascript
Angular模版驱动表单的使用总结
2018/05/05 Javascript
js使用Promise实现简单的Ajax缓存
2018/11/14 Javascript
webpack优化的深入理解
2018/12/10 Javascript
小程序rich-text组件如何改变内部img图片样式的方法
2019/05/22 Javascript
JS继承实现方法及优缺点详解
2020/09/02 Javascript
[01:13]2014DOTA2西雅图邀请赛 舌尖上的TI4
2014/07/08 DOTA
python爬虫实现教程转换成 PDF 电子书
2017/02/19 Python
python装饰器常见使用方法分析
2019/06/26 Python
python打开音乐文件的实例方法
2020/07/21 Python
CSS3 实现弹幕的示例代码
2017/08/07 HTML / CSS
说一下Linux下有关用户和组管理的命令
2014/08/18 面试题
晚会邀请函范文
2014/01/24 职场文书
公司授权委托书格式样本
2014/10/01 职场文书
单位介绍信格式范文
2015/05/04 职场文书
2016特色励志班级口号
2015/12/24 职场文书