前言
本文實現一個 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'
效果實現
使用方式
- 確保你的 AS 能夠使用 ADB 命令
- 配置 Python 2.7 環境(3+ 應該也沒有問題)
-
在 AS 提供的 CMD 中找到當前腳本路徑 輸入:
python unistall.py -
根據命令提示輸入你想要刪除 App 的包的核心關鍵字,如:
com.example.RxCacheDemo,輸入 example 即可(每個人 AS 的這個配置應該都是一樣的) - 以上步驟完成之后會有提示 刪除成功與否。
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

