ionic android 手工打包指令手册

【工作平台要求】

安装 node.js、cordova、ionic(非必须) 等前端相关软件与组件
(1)安装 Java-SDK,正确配置系统环境变量 JAVA_HOME、CLASSPATH、加入 PATH
node.js、JDK 安装路径不能要有空格和中文!!!
推荐安装路径:
C:\nodejs\
C:\Java\jdk1.8.0_112(注意不要升级java,对应就是这个版本,不然其他的也要升级)
系统环境变量:
JAVA_HOME=C:\Java\jdk1.8.0_112
CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
加入 PATH:
%JAVA_HOME%\bin;C:\nodejs\;

(2)安装 Android-SDK,正确配置系统环境变量 ANDROID_HOME、加入 PATH
全部路径中不要有空格和中文!!!例如,主目录是:D:\Android
因为 Windows 系统对文件路径有 255 个字符的限定,
所以不要把 Android 主目录名设置太长!也不要放在很深的子目录里!!
系统环境变量:
ANDROID=D:\Android(非必须偷懒写法)
ANDROID_HOME=D:\Android
加入 PATH:
%ANDROID%\tools;%ANDROID%\platform-tools;
或者
ANDROID_HOME=D:\Android
加入 PATH:
%ANDROID_HOME%\tools;%ANDROID%\platform-tools;

(3)安装 Apache Ant,正确配置系统环境变量 ANT_HOME、加入 PATH(后面例示)
下载:http://apache.fayea.com//ant/binaries/apache-ant-1.10.0-bin.zip
官网:http://ant.apache.org/bindownload.cgi
下载后解压缩在C:或DD盘根目录下(例如:D:\apache-ant-1.10.0)
系统环境变量:
ANT_HOME=D:\apache-ant-1.10.0
PATH 里增加:
%ANT_HOME%\bin;

* npm install -g cordova
npm install -g ionic
npm install -g http-server
* npm install -g gulp
*代表全局和本地即项目(比如myApp)都要安装
【打包前配置、测试】
node -v
java -version
ant -version
android

创建项目文件夹:cordova create myApp(相应目录会自动生成)
进入到项目文件夹里,确保能成功执行(只要不报组件缺失的错,其它的可忽略):
(1)cordova platform add android
(2)ionic run android

【ionic Android 打包流程】
(1)为加快编译速度,强烈建议:手工下载 gradle!下载网址是:
http://services.gradle.org/distributions/gradle-2.14.1-all.zip(.gradle解压到C:\Users\mjx\下面就不会自动去下载)
(2)下载后的zip文件要拷贝到项目的\platforms\android\gradle 文件夹下!
(3)设置环境变量,命令行输入:
set CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL=../gradle-2.14.1-all.zip(每次进cmd都要设置)
(4)为加快编译速度,推荐修改组件下载地址为阿里云服务器——
打开项目\platforms\android\build.gradle修改:
repositories {
//mavenCentral() // 注释掉
jcenter()
flatDir {
dirs 'libs'
}
maven {
url "http://maven.aliyun.com/nexus/content/groups/public"
}
}
(5)开始时先输入指令打包(在此过程中程序会检查、添加组件并配置、编译)
ionic build android(如果用ionic打包,config.xml和ionic.config.json里面的名字都要改)
(6)如果不能一次成功的话,可输入终极打包指令( --release 是正式发布选项):
cordova build android --release(如果用cordova打包就只用改config.xml)
(7)成功后,可在项目/platforms/android/build/outputs/apk/ 下找到打好的apk包

附加============================================================================
【关于证书】
Keytool 是Java-SDK下的一个有效的安全钥匙和证书的管理工具;
Android 要求所有程序必须有签名,否则就不安装。
输入指令时要将 XXXXXXXX 改成自己设定的
keytool -genkey -v -keystore my-release-key.keystore -alias XXXXXXXX -keyalg RSA -keysize 2048 -validity 10000
【关于签名】
jarsigner是Java-SDK中包含的用于JAR文件签名和验证的工具。
注意:输入指令时 XXXXXXXX 与证书名须一致!
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore HelloWorld-release-unsigned.apk XXXXXXXX
注意:
1.证书和签名都是config.xml中的作者名(注意XXXXXXXX -keyalg RSA中间有空格,另外这里的名字大部分人用项目名,apk名也可以,因为这只是一个别名所以都可以,但是注意上下一致)
2.第一次打包成功后以后打包只需要将自己的文件夹改为www,然后将myAPP里面的www换一个目录名,myApp(app的名字改一下,config.xml里面的app名字改一下,然后证书和签名做完就可以了)
3.HelloWorld-release-unsigned.apk要改为打包的apk名字
4.注意证书和签名操作都是在apk目录下完成,而不是在myApp下面
【App优化】

Zipalign 是android平台上整理APK文件的工具,能够对打包的Android应用程序进行优化。
将Android sdk下面的build-tools下面的zipalign.exe复制到tools文件夹下面
例如:
zipalign -v 4 android-release-unsigned.apk xxxxxxx.apk

cordova/ionic打包流程的更多相关文章

  1. Cordova+Ionic之坑

    命令:ionic platform add android 报错:Unable to start the daemon process…… 解决: 1)添加环境变量[_JAVA_OPTIONS],值: ...

  2. Cordova+ionic 开发hybird App --- 开发环境搭建

    Cordova 开发hybird App 开发环境搭建 一.一些基础概念: Ant : 简单说来可以这么理解,如果你用记事本写JAVA程序,然后在cmd里输入javac命令编译它,但是有一天你发现每次 ...

  3. ubuntu15.10下搭建cordova+ionic开发环境

    安装jdk 在命令下输入java如果没有安装会提示该命令包含于openjdk软件包 sudo apt-get install openjdk然后按下tab会列出openjdk开头的软件包 我这里就选择 ...

  4. VS2015 Cordova Ionic移动开发(二)

    一.创建空白Cordova应用 打开VS,选择[新建项目],选择其它语言JavaScript或者TypeScript,语言的话就按个人喜好,喜欢JS就用JS,喜欢TS就用TS,推荐使用TS书写,代码结 ...

  5. Hybrid App混合模式移动应用开发(AngularJS+Cordova+Ionic)

    以前公司开发了某手机APP是通过jquerymobile来实现的,发现它对手机上的原生设备无能为力.于是在下一个项目到来之际,通过筛选最终决定使用cordova+Ionic.看起来简单,但是因为他们各 ...

  6. ionic打包app——以安卓版本为例 辛苦之路~~~

    最近同事做了个angular项目,因为要离职,所以项目我就来接手了,用ionic打包app,然后无数配置的坑就等着我了~~~ 环境安装 1.nodejs 因为自己刚接触做angular项目,就更新到了 ...

  7. 实践分享:开始用Cordova+Ionic+AngularJS开发App

    http://www.cocoachina.com/webapp/20150707/12395.html 本文是一篇关于我本人在使用Cordova+Ionic以及AngularJS开发移动App的过程 ...

  8. ionic 打包时所遇问题记录

    问题1 ----------------------- Error occurred during initialization of VM Could not reserve enough spac ...

  9. 一个简单移动页面ionic打包成app

    先贴JS代码好了,缓动和调整透明度的功能,最后用ionic打包成应用就可以 window.onload=function(){ search(); move(); calc();}function s ...

随机推荐

  1. 13行代码实现:Python实时视频采集(附源码)

    一.前言 本文是<人脸识别完整项目实战>系列博文第3部分:程序设计篇(Python版),第1节<Python实时视频采集程序设计>,本章内容系统介绍:基于Python+open ...

  2. python基础知识12---函数2

    阅读目录 一 引子 二 定义函数 三 调用函数 四 函数的参数 五 练习题 一 引子 1 为何要用函数之不用函数的问题 #1.代码的组织结构不清晰,可读性差 #2.遇到重复的功能只能重复编写实现代码, ...

  3. LAB1 partV

    partV 创建文档反向索引.word -> document 与 前面做的 单词统计类似,这个是单词与文档位置的映射关系. mapF 文档解析相同,返回信息不同而已. reduceF 返回归约 ...

  4. centos7卸载旧jdk安装新jdk1.8

    卸载旧JDK版本 需卸载centos7自带的JDK1.7 rpm -qa|grep jdk     列出已安装jdk版本 rpm -e --nodeps java-1.7.0-openjdk-1.7. ...

  5. vue-cli · Failed to download repo vuejs-templates/webpack: connect ETIMEDOUT 13.229.188.59:443

    初始化vue项目 vue init webpack vue-demo 之后 一直报vue-cli · Failed to download repo vuejs-templates/webpack: ...

  6. 生产者消费者synchronized wait notify

    package ProduceQueueProduce; import java.util.Queue; public class ProducerThread extends Thread { pu ...

  7. Layout-3相关代码:3列布局代码演化[二]

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  8. 关于js-xlsx的简单使用

    关于js-xlsx的简单使用 最近要做一个东西用到对excel的操作,就是在前端将excel加载进来,操作后再生成excel,在网上找了很多种办法,能够实现的demo是下面这个: 纯前端利用 js-x ...

  9. C语言的“编译、链接”

    我们写的代码,仅仅是文本文件(txt),不管后缀怎么变,终究是文本文件,计算机只能显示,不能做事(执行). 文本文件通过“编译.链接”,成为可执行文件(windows下是exe): 编译:生成.o文件 ...

  10. Java——对象的复制、克隆、序列化

    原创作者: https://blog.csdn.net/lmb55/article/details/78277878对象克隆(复制)假如说你想复制一个简单变量.很简单: int apples = 5; ...