使用adb命令批处理安装&卸载apk

一、 bat 安装
         1、修改bat文件内adb_path为你adb.exe所在目录
                   除开发者sdk自带的,也可以是豌豆夹、91等adb.exe所在目录
         2、直接将你所要安装的apk全部拖至install.bat上即可
         3、以替换名称的方式,支持了adb安装中文名称apk ^^
 
>>install.bat文件内容如下:
 
 
  
  1. @echo off 
  2. title adb install [by Join
  3.  
  4. rem 定义adb路径 
  5. rem set adb_path=C:\Program Files\Wandoujia2 
  6. set adb_path=E:\zhao\environment\android-sdk-windows\platform-tools 
  7.  
  8. rem adb.exe存在判断及处理 
  9. if exist %adb_path%\adb.exe (goto :handle) else (echo abd.exe路径不正确,请修正!&goto :end
  10.  
  11. rem adb.exe存在时的处理 
  12. :handle 
  13.  
  14. rem 无文件拖至bat时 
  15. if "%~1"=="" echo 请将apk直接拖放至bat文件!&goto :end 
  16.  
  17. echo 注意事项 
  18. echo 1、已安装过的apk请先用uninstall.bat卸载! 
  19. echo 2、支持中文名称apk的安装(以替换名称的方式)! 
  20. echo 3、支持多apk文件安装(即选中所有你要安装的apk拖动至此bat上)! 
  21.  
  22. rem path增加adb路径 
  23. set path=%adb_path%;%path% 
  24.  
  25. rem 多文件时的遍历 
  26. :main 
  27. setlocal enabledelayedexpansion 
  28. if not "%~1"=="" ( 
  29.   echo. 
  30.   rem 文件后缀名判断 
  31.   if /i "%~x1"==".apk" ( 
  32.     rem 文件名称替换后install 
  33.     set dir=%~dp1 
  34.     set file=%~nx1 
  35.     ren "%~1" install.apk 
  36.     echo 安装"!dir!!file!"... 
  37.     adb install "!dir!install.apk" 
  38.     ren "!dir!install.apk" !file! 
  39.   ) else ( 
  40.     echo 文件类型错误:不支持%~x1! 
  41.   ) 
  42.  
  43.   shift /1 
  44.   goto :main 
  45.  
  46. :end 
  47. echo. 
  48. pause 
 
二、 bat 卸载
         1、修改bat文件内adb_path为你adb.exe所在目录
                   除开发者sdk自带的,也可以是豌豆夹、91等adb.exe所在目录
         2、请将需要卸载的apk包名,写入同目录的package.txt
         3、直接双击运行uninstall.bat即可
 
>>uninstall.bat文件内容如下:
 
 
  
  1. @echo off&setlocal enabledelayedexpansion 
  2. title adb uninstall [by Join
  3.  
  4. rem 定义adb路径 
  5. rem set adb_path=C:\Program Files\Wandoujia2 
  6. set adb_path=E:\zhao\environment\android-sdk-windows\platform-tools 
  7.  
  8. rem adb.exe存在判断及处理 
  9. if exist %adb_path%\adb.exe (goto :handle) else (echo abd.exe路径不正确,请修正!&goto :end
  10.  
  11. rem adb.exe存在时的处理 
  12. :handle 
  13.  
  14. rem path增加adb路径 
  15. set path=%adb_path%;%path% 
  16.  
  17. echo 注意事项 
  18. echo 1、请将需要卸载的apk包名,写入同目录的package.txt! 
  19. echo 2、不知道apk包名?可以用如下几种简单方式查看。 
  20. echo   1)直接解压apk,得到AndroidManifest.xml,用记事本打开就行! 
  21. echo      能看到类似*package *manifest *org.join.xxx的内容-- 
  22. echo   2)使用apktool,反编译得到apk资源文件,查看AndroidManifest.xml! 
  23. echo      最上部manifest标签内package="org.join.xxx"属性内内容 
  24.  
  25. rem package.txt存在判断及处理 
  26. if exist package.txt ( 
  27.  
  28.   rem 遍历文件多行 
  29.   for /f %%l in (package.txt) do ( 
  30.     set /a num+=1 
  31.     echo.&echo 卸载"%%l"... 
  32.     call adb uninstall %%l 
  33.   ) 
  34. else ( 
  35.   echo.&echo package.txt不存在! 
  36.  
  37. :end 
  38. echo. 
  39. pause 
 
三、后记
         记忆力不好,不太记得写这个的初衷了。总之有部分原因升级了豌豆夹2,双击apk会打开它的软件才让安装-_-!
 

         恩,还有adb install前你可以增加参数决定怎么安装,如下:

         adb install [-l] [-r] [-s] <file> - push this package file to the device and install it

                                 ('-l' means forward-lock the app)

                                 ('-r' means reinstall the app, keeping its data)

                                 ('-s' means install on SD card instead of internal storage)

 
         希望这也能够给大家稍带来一点方便^_^!