zoukankan      html  css  js  c++  java
  • 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 Files7-Zip7z.exe" x -o".\%DATETIME%source" ".\%DATETIME%source.apk"  

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

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

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

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

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

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

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

    [plain] view plaincopy
     
    1. "D:Program Files7-Zip7z.exe" a -tzip ".\%DATETIME%unsigned.apk" ".\%DATETIME%source*"  

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

    [plain] view plaincopy
     
    1. "D:Program FilesJavajdk1.7.0_21inkeytool.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 FilesJavajdk1.7.0_21injarsigner.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 Files7-Zip7z.exe" x -o".\%DATETIME%source" ".\%DATETIME%source.apk"  
    9. RMDIR /S /Q ".\%DATETIME%sourceMETA-INF"  
    10. MKDIR ".\%DATETIME%sourceassetswww"  
    11. XCOPY /E "%SOURCEWWW%*" ".\%DATETIME%sourceassetswww"  
    12. "D:Program Files7-Zip7z.exe" a -tzip ".\%DATETIME%unsigned.apk" ".\%DATETIME%source*"  
    13. "D:Program FilesJavajdk1.7.0_21inkeytool.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 FilesJavajdk1.7.0_21injarsigner.exe" -keystore ".\%DATETIME%keystore" -storepass "%DATETIME%" -keypass "%DATETIME%" -digestalg SHA1 -signedjar ".\%DATETIME%signed.apk" ".\%DATETIME%unsigned.apk" "%DATETIME%"  
  • 相关阅读:
    Spring整合hessian和burlap及自带的Invoker
    Spring 企业级开发应用远程服务原理和实现机制
    RMI
    并行开发 —— 第七篇 简要分析任务与线程池
    并行开发 —— 第二篇 Task的使用
    并行开发 —— 第六篇 异步编程模型
    网络编程——第三篇 HTTP应用编程(下)
    并行开发 —— 第四篇 同步机制(上)
    网络编程——第二篇 HTTP应用编程(上)
    并行开发 —— 第一篇 Parallel的使用
  • 原文地址:https://www.cnblogs.com/daishuguang/p/3483142.html
Copyright © 2011-2022 走看看