1.基本的依赖环境

  Node.js、Jdk、SDK、Gradle

     Jdk,sdk,gradle 百度网盘下载地址 : https://pan.baidu.com/s/16MvuV9Nlq-SCCnyGYBYiPQ

2.环境配置

     1.node.js (直接官网下载安装就可以了, 在cmd中   node -v  检测是否安装成功)

     2.Jdk配置:

             下载完成,解压,直接按照提示安装,全局点确定,不出意外,最后的安装路径为:C:\Program Files\Java

              OK,jdk安装完成,在cmd中,输入$ java -version验证是否安装成功。

                

android 怎么生成的apk是最新的_ionic打包apk 

   3.sdk (需要配置环境变量)

           解压后(直接右键X解压并重命名。因为面还有个文件夹,不建议用右键+E解压)。

           将重命名的文件夹,跟jdk放在一个父目录,便于查找:C:\Program Files\SDK

          接着配置环境变量,我的电脑——右键属性——-高级系统设置——-环境变量。

           在下面的系统变量(s)中,新建,键值对如下:

           name: ANDROID_HOME

           key: C:\Program Files\SDK

            然后在path中,全局声明一下,将 ;%ANDROID_HOME%\tools 缀在最后面,前面有【;】分隔符。(注:win 10 系统不               需   要  封号,SDK,JDK也是同理)。

                                              

android 怎么生成的apk是最新的_签名apk_02

               然后运行CMD,输入$ android -h,如果出现一大堆指令,说明你的SDK安装无误,并且环境变量配置OK。

  

android 怎么生成的apk是最新的_ionic_03

             现在,打开SDK目录下的SDK Manager.exe

             打开界面上的Tools,选择options,先配置国内镜像:

             域名千万不要输入http或者https协议前缀

android 怎么生成的apk是最新的_ionic打包apk _04

             回到主界面,点packages再点reload

             先勾选如下图的三个Tools:

              分别是[ Android SDK Tools,Android SDK platform-tools,Android SDK Build-tools]

              还没完,下面还有一个:[SDK platform]

android 怎么生成的apk是最新的_签名apk_05

 

android 怎么生成的apk是最新的_ionic_06

           全部选中后,点右下角 install packages 来安装,耐心等待即可。 

       4.gradle安装(需要配置环境变量)

             同样安装在JDK,SDK的目录下,便于查找。

              同样的配置环境变量:

               GRADLE_HOME=C:\Program Files\SDK\gradle-4.1

                ;%GRADLE_HOME%\bin

                  测试命令(查看版本):gradle -v

 

以上开发环境安装完成的话,ionic正常打包的环境是没问题了,可以打包测试apk

ionic cordova build android

如若你聪慧的双眼发现如下字眼:Build Success! 说明你已经成功打包了。耐心等待,命令行结束会提示你apk的生成位置.

OK,此时你已经有了debug的包,但是这个包没有签名,不能发布。

3.生成签名秘钥以及生成签名的Apk

1.在JDK目录下的bin文件夹下(C:\Program Files\Java\jdk1.8.0_71\bin),先看看有没有keytool.exe和jarsigner.exe文件,这两个程序用于给APK签名,签名以后即可发布。 

2.将Ionic生成的文件先命名为app.apk,然后复制一份当前的bin目录里,执行 keytool.exe ,如果程序cmd窗口闪退,就手动打开cmd窗口,

 用java keytool生成密钥,运行如下命令:

keytool -genseckey -alias billben -keypass 12345678 -keyalg aes -keysize 128 -storepass 12345678

输出错误信息:
keytool错误: java.security.KeyStoreException: Cannot store non-PrivateKeys

解决办法:

    指定-storetype 为 jceks,修改的命令为:

keytool -genseckey -alias billben -keypass 12345678 -keyalg aes -keysize 128 -storepass 12345678 -storetype jceks

原因:

    java默认的密钥库类型为JKS, 除这种类型外,还有PKCS12、JCEKS两种类型,要存储secret key要使用JCEKS类型,另外两种不支持。

    最后输入

keytool -genkey -v -keystore [姓名].keystore -alias [姓名].keystore -keyalg RSA -validity 20000

此时按下回车,即可生成签名: ***.keystore

生成签名的APK

jarsigner -verbose -keystore [姓名].keystore -signedjar 已签名.apk app.apk [姓名].keystore

按下回车,你会发现,bin文件夹里多了个 已签名.apk    这时候,可以说,一个软件就诞生啦!