ionic3应用的Android打包签名发布步骤
版权声明:本文为博主原创文章,未经博主允许不得转载。
当我们的ionic应用开发结束之后,就要开始上线到应用市场,那么Android的发布步骤具体是怎么样的呢?
1)编译
运行命令行:
ionic cordova build android --release
- 1

- 1
如果一切顺利,最后会build successful
在platforms/android/build/outputs/apk/目录下面会生成默认名字为android-release-unsigned.apk的release版本apk文件。
2)使用keytool生成keystore文件
keytool是JDK自带的加密工具,我们需要生成一个keystore文件,然后保存好,之后不需要每次都生成新的。
运行命令行:
keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
- 1

- 1
之后会让我们设置一些密码和安全问题,根据命令行提示进行设置即可,最后会在当前命令行执行的目录下自动生成默认名为my-release-key.keystore文件。如果你设置了alias_name,那么文件就是你设置的名字。validity 10000代表文件的加密时间为10000天。
3)使用jarsigner签名
jarsigner是JDK自带的签名工具,我们需要将release版本的apk文件利用keystore文件进行加密,也就是签名,签名之后的apk才能发布到Android应用市场。
运行命令行:
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore android-release-unsigned.apk alias_name
- 1

- 1
注意这里的apk路径要正确,如果路径不正确,就找不到需要签名的apk文件,自然会签名失败。
4)压缩apk文件
zipalign是Android/sdk/build-tools/VERSION/zipalign的压缩代码工具,可以将我们的apk体积最小化。
比如我的zipalign的位置在D:\Android\android-sdk-windows\build tools\25.0.1\zipalign.exe,25.0.1是android sdk版本号,任意版本号都有zipalign.exe。
打开电脑的命令行工具:
进入zipalign正确的路径之后,运行命令行:
zipalign -v 4 D:\project\IoT-China\CustomerProjects\ESTUN\Implementation\Source\Solutions\ESTUNMOBILE.WebUI\platforms\android\build\outputs\apk\android-release-unsigned.apk alias_name.apk
- 1

- 1
这里android-release-unsigned.apk的路径应该是你的正确的路径,alias_name是压缩完成之后的apk文件名,成功之后会出现Verification succesful。
现在去你的zipalign所在的路径,可以看到压缩完成的apk文件。
5)不需要像苹果一样设置各种各样的证书,现在就可以将我们压缩完成的apk文件上传到相应的应用市场,填写相应的APP信息,等待审核就可以了。
ionic3应用的Android打包签名发布步骤的更多相关文章
- EclipseAndroid打包签名发布安装失败闪退运行不了
EclipseAndroid打包签名发布安装失败闪退运行不了 本来没怎么用过用Eclipse写安卓,可是有人有需要必须用Eclipse写,那就写呗. 可在签名打包的时候,发到手机上安装,提示安装成功. ...
- react-native android打包签名release版apk遇到的问题
在该项目包名时遇到的一个android打包问题,如下 改包名步骤 修改android/app/build.gradle里的applicationId,为新包名,如:com.xxx.yyy.myProj ...
- Android打包签名
Ⅰ.用jdk和sdk自带工具打包签名 a.把jdk下的keytool.exe和jarsigner.exe所在目录(两个工具在同一目录) 添加到环境变量path 1)新建环境变量package,pack ...
- Android Studio 打包签名发布New Key Store
Key store path:存放路径 Key Alias:别名 Validity(years):有效期 Certificate:证书 First and Last Name: Organizatio ...
- android 打包签名
1.Eclipse工程中右键工程,弹出选项中选择 android工具 → 生成签名应用包 2.选择需要打包的android项目工程 3.如果已有私钥文件,选择私钥文件 输入密码,如果没有私钥文件见第6 ...
- Android 打包签名 从生成keystore到完成签名 -- 转
首先,我们需要一个keystore,当然已经有了的话就不用这一步了:cmd下:进入到jdk的bin目录,这样的话,android.keystore文件就会生成在这个目录下,签名的时候我们需要这个文件C ...
- Android 打包签名 从生成keystore到完成签名
进入生成工具: 工具帮助: 输入指令并获得结果: 转自: http://www.cppblog.com/fwxjj/archive/2010/05/24/116208.html 首先,我们需 ...
- android打包签名,从生成keystore到完成签名
输入指令并获得结果:(对应自己的java安装目录) 首先,我们需要一个keystore,当然已经有了的话就不用这一步了:cmd下:进入到jdk的bin目录,这样的话,android.keystore文 ...
- android打包签名介绍
Keytool 是一个有效的安全钥匙和证书的管理工具. Java 中的 keytool.exe (位于 JDK\Bin 目录下)可以用来创建数字证书,所有的数字证书是以一条一条(采用别名区别)的形式存 ...
随机推荐
- Qt5.7 + VS2015 环境搭建
http://blog.csdn.net/liang19890820/article/details/53931813#安装插件 配置 Qt 5.7 选择:Qt VS Tools -> Qt O ...
- 【总文档】rac增加新节点的方法步骤 How to Add Node/Instance or Remove Node/Instance in 10gR2, 11gR1, 11gR2 and 12c Oracle Clusterware and RAC
[总文档]How to Add Node/Instance or Remove Node/Instance in 10gR2, 11gR1, 11gR2 and 12c Oracle Clusterw ...
- Linux x64 -- 内核程序(驱动程序)读取任意进程数据实现
四级页表结构 现在的64位Linux系统中,并没有使用全部的64位地址空间,而是使用其低48位,高16位并没有使用. 其中 39至47这9位用于索引PGD(page global directory) ...
- JavaWeb学习总结-12 JSTL标签语言
一 JSTL JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能. JSTL支持通用的.结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签,SQL标签. 除了 ...
- Luogu P1129 [ZJOI2007]矩阵游戏
题目意思还是比较直观的,而且这个建模的套路也很明显. 我们首先考虑从主对角线可以转移到哪些状态. 由于每一次操作都不会把同一行(列)的黑色方块分开.因此我们发现: 只要找出\(n\)个黑色棋子,让它们 ...
- 千兆以太网TCP协议的FPGA实现
转自https://blog.csdn.net/zhipao6108/article/details/82386355 千兆以太网TCP协议的FPGA实现 Lzx 2017/4/20 写在前面,这应该 ...
- ExtJS初探:在项目中使用ExtJS
注意:本文写作时间是 2013 年,所讲的 ExtJS 如今早已过时,请勿学习! -------------------------------- 今天ExtJS官网发布了ExtJS最新正式版4.2. ...
- CSS 内边距 (padding) 实例
CSS 内边距 (padding) 实例元素的内边距在边框和内容区之间.控制该区域最简单的属性是 padding 属性. CSS padding 属性定义元素边框与元素内容之间的空白区域.CSS 内边 ...
- Swarm基于多主机容器网络 - overlay networks 梳理
前面介绍了Docker管理工具-Swarm部署记录,下面重点说下Swarm基于多主机容器通信的覆盖网络 在Docker版本1.12之后swarm模式原生支持覆盖网络(overlay networks) ...
- Redis常用操作-------Hash(哈希表)
1.HDEL key field [field ...] 删除哈希表 key 中的一个或多个指定域,不存在的域将被忽略. 在Redis2.4以下的版本里, HDEL 每次只能删除单个域,如果你需要在一 ...