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 包 ;
签名
打包后文件必须签名才可安装使用;
在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.*/
(完)





浙公网安备 33010602011771号