bat批处理之批量安装卸载apk

        工作中遇到的需求,要安装多个apk,所以就搜索资料资写了批量安装脚本,当然要安装就要卸载,顺便也写了个卸载脚本。
        安装脚本内容:

@echo off  
setlocal EnableDelayedExpansion
title install apks
color 0a
:: 重启adb 保证能顺利连接  
adb kill-server  
adb start-server  
adb wait-for-device 
set ApkPath=%cd%\apks
cd %ApkPath%  
set count = 0
for /R %%s in (*.apk) do (
    ::要使用引号来包括apk的路径,不然adb install语法报错  
    set /a count +=1
    echo 正在安装第 !count! 个apk:
    adb install "%%s"  
    echo ------------------------------------------------
)  
  echo ***********安装完成***********
pause 


       卸载脚本内容:

@echo off  
setlocal EnableDelayedExpansion
title uninstall apks
:: 重启adb 保证能顺利连接  
adb kill-server  
adb start-server  
adb wait-for-device
set ApkPath=%cd%\apks
cd %ApkPath% 
for /R %%s in (*.apk) do (
    aapt dump badging %%s  > %cd%\2.txt
    findstr "package" %cd%\2.txt  >> %cd%\1.txt

del %cd%\2.txt
:: 每行以空格为分割,获取第二个元素
for /f "tokens=2 delims= " %%s in (1.txt) do (  
   echo %%s >> 2.txt
)
 del %cd%\1.txt
 :: 每行以=号为分割,获取第二个元素,并且去除单引号’,获取最终的包名
for /f "tokens=2 delims==" %%s in (2.txt) do (  
   set s1=%%s
   set s1=!s1:'=!
   echo !s1! >> 3.txt
)
del %cd%\2.txt
for /f %%s in (3.txt) do (  
    adb uninstall %%s
)
del %cd%\3.txt
echo ***********卸载结束***********
pause

       使用说明:
       1、使用前提,安装了jdk和sdk,因为卸载的时候使用了aapt.exe,所以还需要把aapt.exe所在文件目录路径设为全局变量;
       2、新建文本文档,分别添加上述两个脚本并保存,扩展名txt修改为bat;
       3、把需要安装的apk放在apks文件夹下,安装和卸载时把apks文件夹分别拖拽到上述bat文件上即可【apk的名称不要含有中文字符,否则安装会报错Failure [INSTALL_FAILED_INVALID_URI]】。
       4、脚本内容可根据自己的需求做修改。

   


  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值