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


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

  1. SET SOURCEAPK=".\Test4.apk"

设置网页的路径

  1. SET SOURCEWWW=".\www"

计算时间戳

  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%

创建临时文件夹

  1. MKDIR ".\%DATETIME%"

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

  1. COPY "%SOURCEAPK%" ".\%DATETIME%\source.apk"

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

  1. "D:\Program Files\7-Zip\7z.exe" x -o".\%DATETIME%\source" ".\%DATETIME%\source.apk"

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

  1. RMDIR /S /Q ".\%DATETIME%\source\META-INF"

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

  1. MKDIR ".\%DATETIME%\source\assets\www"

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

  1. XCOPY /E "%SOURCEWWW%\*" ".\%DATETIME%\source\assets\www"

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

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

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

  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 安装程序

  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%"

完整的程序代码如下

  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%"

phonegap apk的更多相关文章

  1. 安卓升级提示 phoneGap APK软件更新提示

    以下代码由PHP200 阿杜整理 package com.example.syzx;   import java.io.BufferedReader; import java.io.File; imp ...

  2. 创建你的第一个ionic+cordova应用(1)

    前面我们安装了前端的神器webstorm11,体验到了强大的开发体验,接着我们来安装ionic 必备: Node.js (npm安装工具) 百度下载 官网下载  注:如果官网新版不能安装请用百度下载0 ...

  3. Android中实现Activity的启动拦截之----实现360卫士的安装应用界面

    第一.摘要 今天不是周末,但是我已经放假了,所以就开始我们的技术探索之旅,今天我们来讲一下Android中最期待的技术,就是拦截Activity的启动,其实我在去年的时候,就像实现这个技术了,但是因为 ...

  4. 使用ionic与cordova(phonegap)进行轻量级app开发前的环境配置与打包安卓apk过程记录

     前言 有人说:"如果你恨一个人,就让ta去接触cordova(phonegap)",这是因为这里面的水很深,坑很多,真让人不是一般地发狂.或许有幸运的人儿基本顺顺利利就配置完环境 ...

  5. 在 Linux 中自动生成 Cordova/Phonegap for Android 的 APK 安装程序

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

  6. 开发node桌面级应用工具:apk转化epub

    随着苹果ibooks对国内的开放,最近接了个麻烦的需求: 把现有的APK转化支持苹果ibooks电子书的epub格式 apk,基本都知道就是安卓的应用程序 epub,是ibooks支持的电子书格式 ( ...

  7. 将HTML5封装成android应用APK文件的几种方法

    越来越多的开发者热衷于使用html5+JavaScript开发移动Web App.不过,HTML5 Web APP的出现能否在未来取代移动应用,就目前来说,还是个未知数.一方面,用户在使用习惯上,不喜 ...

  8. Cordova+Asp.net Mvc+GIS跨平台移动应用开发实战1-系统初步搭建(附演示,apk,全部源码)

    1.前言 身处在移动互联网的今天,移动应用开发炙手可热,身为程序猿的我们怎么能错过开发一款我们自己的APP.本人算是一个基于.net的GIS开发入门者(马上就大四啦), 暑假在学校参加GIS比赛有大把 ...

  9. 将HTML5封装成android应用APK文件的几种方法(转载)

    越来越多的开发者热衷于使用html5+JavaScript开发移动Web App.不过,HTML5 Web APP的出现能否在未来取代移动应用,就目前来说,还是个未知数.一方面,用户在使用习惯上,不喜 ...

随机推荐

  1. Java中基本数据类型和包装器类型的关系

    在程序设计中经常用到一系列的数据类型,在Java中也一样包含八中数据类型,这八种数据类型又各自对应一种包装器类型.如下表: 基本类型 包装器类型 boolean Boolean char Charac ...

  2. Ubuntu server下安装JDK和Tomcat7

    服务器是Ubuntu server 12.04 LTS 64bit 所有操作假设已经有root权限,若没有需要添加sudo. 一. 安装JDK 1.去Oracle官网下载jdk-6u45-linux- ...

  3. 提升升级 强制更新 Download

    Activity和广播 /** 下载APK细节 1.点击升级后对话框不消失,再次点击时不能重复下载 2.下载过程中退出APP,下次进入应用后要重新下载(因为可能不完整) 3.下载过程中退出APP(或下 ...

  4. html02表格的使用

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  5. XML在JAVA项目中的作用

    java项目中,xml文件一般都是用来存储一些配置信息 一般的编程, 多数用来存储配置信息 . 拿JDBC来说,可以把数据库连接字符串写到xml,如果要修改数据源,只需要改xml就可以了,没必要再去重 ...

  6. C# DateTime.Now

    //2008年4月24日 System.DateTime.Now.ToString("D"); //2008-4-24 System.DateTime.Now.ToString(& ...

  7. HTTP协议是什么?(及get和post请求的区别)

    http://blog.csdn.net/xiemk2005/article/details/6108618 http://blog.csdn.net/mengleigaocong/article/d ...

  8. iOS真机测试种可能遇到的问题

    1. Reason- image not found 用模拟器是没有问题的,不过在真机好像是有问题,不确定是否是所有机型. 崩溃日志   1 2 3 4 5   dyld: Library not l ...

  9. 五、C# 类

    面向对象编程 类是面向对象编程的3个主要特征---封装.继承和多态性---的基础.   封装允许隐藏细节.   继承 继承关系至少涉及两个类,其中一个类(基类)是另一个类的更泛化的版本.   为了从一 ...

  10. openstack VM可以ping外部网络,但是外部网络ping不通VM

    经过无数次的尝试,终于搭建好了完整的Openstack,本来VM可以获取到IP地址,但是等到我大功告成的时候,突然发现外部网络却不能ping进VM,我可是整整折腾了我几个通宵,这是哭啊.然而,皇天不负 ...