ionic3 打包andriod app + 签名

ionic3 打包成 android app

开发环境

node

jdk

SDK(用gitbash会 报错,改用powerShell /cmd ) 如图表示ok

gradle

环境变量设置参考

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



打开SDK目录下的SDK Manager.exe 勾选 4个: 

Android SDK Tools,     Android SDK platform-tools ,      Android SDK Build-tools       SDK platform
一般情况下载不了, 解决方法大概如下; 不一定成功,看墙;


解决安卓SDK更新dl-ssl.google.com无法连接的方法

Q:解决安卓SDK更新dl-ssl.google.com无法连接的方法:

A1.修改C:\windows\system32\dirvers\etc\hosts文件,将其复制到其他地方修改后替换回原来的文件夹下。

具体修改的内容是:

搭建Android就会用到Android SDK,而安装SDK就需要在线下载SDK包,而在国内dl-ssl.google.com这个网站总是ping不通的。(在站长之家
显示可以ping通,但实际不知道为什么都没有ping通)

\1. 访问http://tool.chinaz.com/ 站长工具网站,选择超级PING。

\2. 把域名dl-ssl.google.com粘贴进去,这里注意的是监测点只选择“海外”,点击查询。

\3. 接下来就能看到有好几个可以PING通的IP地址。

\4. 此时可以用cmd ping 命令来测试这些IP是否能ping通,发现一个可以ping通的了,下面就是更改Host了。

\5. 进入C:\Windows\System32\drivers\etc下,用记事本打开host文件:

74.125.23.190 dl-ssl.google.com

A2.使用国内镜像更新下载,

打开SDK Manager.exe界面上的Tools,选择options; 设置 域名输入http或者https协议前缀;

如图

腾讯提供:http://android-mirror.bugly.qq.com:8080/include/usage.html

Android SDK 在线更新镜像服务器资源:

大连东软信息学院镜像服务器地址:
http://mirrors.neusoft.edu.cn 端口:80(推荐)
北京化工大学镜像服务器地址:
IPv4: http://ubuntu.buct.edu.cn/ 端口:80
IPv4: http://ubuntu.buct.cn/ 端口:80
IPv6: http://ubuntu.buct6.edu.cn/ 端口:80
上海GDG镜像服务器地址:
http://sdk.gdgshanghai.com 端口:8000
中国科学院开源协会镜像站地址:
IPV4/IPV6: http://mirrors.opencas.cn 端口:80
IPV4/IPV6: http://mirrors.opencas.org 端口:80
IPV4/IPV6: http://mirrors.opencas.ac.cn 端口:80

********************************************####

安装ionic 程序 (空程序例子)##

npm install -g ionic cordova         // 
ionic start app tabs                //创建ionic项目
ionic serve                        // 启动服务  确认ok后可以开始打包

打包

ionic cordova build android --release

(如果这条命令有问题,可以去掉–release然后debug编译,编译完成Dos会显示apk目录位置)

Build Success! 说明成功打包;命令行结束会提示你apk的生成位置。

如果报错,根据报错情况,下载对应的sdk 包 ;

签名

Android应用程序签名(或重新签名)详解

打包后文件必须签名才可安装使用;

在JDK目录下的bin文件夹下有 keytool.exe和jarsigner.exe文件,这两个程序用于给APK签名,签名以后即可发布安装;

前面已经配置过有环境变量;

找到 打包后的app 文件夹,运行命令行;

keytool -genkey -v -keystore dome.keystore -alias dome.keystore -keyalg RSA -validity 20000
/*说明:-genkey 产生密钥

-alias demo.keystore 别名 demo.keystore

-keyalg RSA 使用RSA算法对签名加密

-validity 40000 有效期限4000天

-keystore demo.keystore */

jarsigner -verbose -keystore dome.keystore -signedjar notepad_signed.apk(新文件名) notepad.apk(旧文件名) dome.keystore


/*说明:-verbose 输出签名的详细信息

-keystore  demo.keystore 密钥库位置

-signedjar demor_signed.apk demo.apk demo.keystore 正式签名,三个参数中依次为签名后产生的文件demo_signed,要签名的文件demo.apk和密钥库demo.keystore.*/



(完)
posted @ 2018-04-26 00:37  wangpinzhou  阅读(660)  评论(0)    收藏  举报