phonegap apk

在 Windows 中自动生成 Cordova/Phonegap for Android 的 APK 安装程序
本贴首发于:http://xuekaiyuan.com/forum.php?mod=viewthread&tid=13


代码说明
设置已编译的不包含网页的 APK 安装程序的路径

[plain] view plaincopy
 
  1. SET SOURCEAPK=".\Test4.apk"  

设置网页的路径

[plain] view plaincopy
 
  1. SET SOURCEWWW=".\www"  

计算时间戳

[plain] view plaincopy
 
  1. SET DATETIME=%TIME:~0,1%  
  2. IF "%DATETIME%"==" " THEN SET DATETIME=0  
  3. SET DATETIME=%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%%DATETIME%%TIME:~1,1%%TIME:~3,2%%TIME:~6,2%  

创建临时文件夹

[plain] view plaincopy
 
  1. MKDIR ".\%DATETIME%"  

复制已编译的不包含网页的 APK 安装程序到临时文件夹

[plain] view plaincopy
 
  1. COPY "%SOURCEAPK%" ".\%DATETIME%\source.apk"  

解压缩已编译的不包含网页的 APK 安装程序到临时文件夹

[plain] view plaincopy
 
  1. "D:\Program Files\7-Zip\7z.exe" x -o".\%DATETIME%\source" ".\%DATETIME%\source.apk"  

删除临时文件中的签名信息

[plain] view plaincopy
 
  1. RMDIR /S /Q ".\%DATETIME%\source\META-INF"  

在临时文件夹中创建网页的路径

[plain] view plaincopy
 
  1. MKDIR ".\%DATETIME%\source\assets\www"  

复制网页到临刊文件夹中网页的路径

[plain] view plaincopy
 
  1. XCOPY /E "%SOURCEWWW%\*" ".\%DATETIME%\source\assets\www"  

压缩临时文件夹为未签名的 APK 安装程序

[plain] view plaincopy
 
  1. "D:\Program Files\7-Zip\7z.exe" a -tzip ".\%DATETIME%\unsigned.apk" ".\%DATETIME%\source\*"  

在临时文件夹中生成一个签名用的密钥文件

[plain] view plaincopy
 
  1. "D:\Program Files\Java\jdk1.7.0_21\bin\keytool.exe" -genkeypair -keystore ".\%DATETIME%\keystore" -storepass "%DATETIME%" -dname "CN=%DATETIME%, OU=daonao.com, O=daonao.com, L=Beijing, L=Beijing, C=CN" -alias "%DATETIME%" -keypass "%DATETIME%"  

使用密钥文件对未签名的 APK 安装程序签名生成已签名的 APK 安装程序

[plain] view plaincopy
 
  1. "D:\Program Files\Java\jdk1.7.0_21\bin\jarsigner.exe" -keystore ".\%DATETIME%\keystore" -storepass "%DATETIME%" -keypass "%DATETIME%" -digestalg SHA1 -signedjar ".\%DATETIME%\signed.apk" ".\%DATETIME%\unsigned.apk" "%DATETIME%"  

完整的程序代码如下

[plain] view plaincopy
 
  1. SET SOURCEAPK=".\Test4.apk"  
  2. SET SOURCEWWW=".\www"  
  3. SET DATETIME=%TIME:~0,1%  
  4. IF "%DATETIME%"==" " THEN SET DATETIME=0  
  5. SET DATETIME=%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%%DATETIME%%TIME:~1,1%%TIME:~3,2%%TIME:~6,2%  
  6. MKDIR ".\%DATETIME%"  
  7. COPY "%SOURCEAPK%" ".\%DATETIME%\source.apk"  
  8. "D:\Program Files\7-Zip\7z.exe" x -o".\%DATETIME%\source" ".\%DATETIME%\source.apk"  
  9. RMDIR /S /Q ".\%DATETIME%\source\META-INF"  
  10. MKDIR ".\%DATETIME%\source\assets\www"  
  11. XCOPY /E "%SOURCEWWW%\*" ".\%DATETIME%\source\assets\www"  
  12. "D:\Program Files\7-Zip\7z.exe" a -tzip ".\%DATETIME%\unsigned.apk" ".\%DATETIME%\source\*"  
  13. "D:\Program Files\Java\jdk1.7.0_21\bin\keytool.exe" -genkeypair -keystore ".\%DATETIME%\keystore" -storepass "%DATETIME%" -dname "CN=%DATETIME%, OU=daonao.com, O=daonao.com, L=Beijing, L=Beijing, C=CN" -alias "%DATETIME%" -keypass "%DATETIME%"  
  14. "D:\Program Files\Java\jdk1.7.0_21\bin\jarsigner.exe" -keystore ".\%DATETIME%\keystore" -storepass "%DATETIME%" -keypass "%DATETIME%" -digestalg SHA1 -signedjar ".\%DATETIME%\signed.apk" ".\%DATETIME%\unsigned.apk" "%DATETIME%"  
posted @ 2013-12-20 01:17  daishuguang  阅读(278)  评论(0编辑  收藏  举报