Cordova 打包签名 Android release app 过程详解及cordova创建app

代码吟游使
• 阅读 16079
很久之前就想写这篇博客,但是一直没有时间,今天抽空来整理一下,总结一下cordova的创建、打包、签名apk。对于cordova所需的打包环境,如node,cordova的安装,这里就不再多说,度娘上有很多...

1.cordova命令创建一个项目

cordova create testApp com.test.app

这里testAPP是项目的名字,testApp com.test.app是APP的包名,可以随意取,最好按照“com.” 开头
cd testApp 进入到刚刚创建的项目目录,可以看到如下文件目录:

 Cordova 打包签名 Android release app 过程详解及cordova创建app

说说目录中文件的用处

  • hooks:里面就一个readme.md文件,没什么卵用
  • platfroms:通过cordova platforms add android 添加的安卓相关文件就放在里面,这个文件夹比较重要,打包生成的apk也在这个文件夹下
  • plugins:cordova安装的插件在此文件夹下
  • res:存放资源文件,我没有用到过
  • www:这个文件下写我们的项目,如html,js,css等代码
  • .npmignore:忽略文件,没什么用处
  • config.xml:打包项目的配置文件,可以修改APP的包名,应用名称等

2.cordova命令添加Android平台

cordova platforms add android
(如果是想移除Android平台的,可以运行cordova platforms remove android,也可以安装指定版本的Android平台,cordova platforms add android@6.3.0)
运行命令后,会生成一些新文件夹,node_modules是依赖文件,在platfroms下面会生成新加入的Android平台文件

 Cordova 打包签名 Android release app 过程详解及cordova创建app

 Cordova 打包签名 Android release app 过程详解及cordova创建app

另外:
安装插件 cordova plugin add 插件名,如:cordova plugin add cordova-hot-code-push-plugin
卸载插件 cordova plugin remove 插件名,如:cordova plugin remove cordova-hot-code-push-plugin
查看安装的插件列表 cordova plugin list

3.cordova命令编译打包apk

cordova build android
执行命令后,会在testApp\platforms\android\build\outputs\apk目录下生成一个android-debug.apk,这就完成了一个简单的打包,把这个apk安装在手机上,就可以运行了。

但是,上面生成的是一个测试的apk,没有任何签名信息,不能上架到各大应用平台,下面来讲一下打包一个有签名的apk

apk签名

1.第一步

在项目根目录下运行命令cordova build --release android,会在testApp\platforms\android\build\outputs\apk目录下生成一个android-release-unsigned.apk

 Cordova 打包签名 Android release app 过程详解及cordova创建app

 Cordova 打包签名 Android release app 过程详解及cordova创建app

2.第二部

运行命令keytool -genkeypair -alias name.keystore -keyalg RSA -validity 4000 -keystore name.keystore
执行以上命令后,会要求填写密码口令,单位信息等等,这里需要记住录入的密码,因为最后编译apk的时候还需要用到,在所有的选项都录入完后,按回车,会在项目的根目录下生成一个name.keystore的签名文件,里面就包含刚刚录入的一些信息。
会在根目录下生成一个name.keystore,这是apk独有的签名证书,如下图(命令中的name.keystore中的name是签名文件的名字,这里可以任意取名,我习惯用name.keystore)

 Cordova 打包签名 Android release app 过程详解及cordova创建app

 Cordova 打包签名 Android release app 过程详解及cordova创建app

3.第三部

testApp\platforms\android\build\outputs\apk目录下生成一个android-release-unsigned.apk重命名为name_unsigned.apk(我为了与name.keystore对应),并将它和根目录下的name.keystore放在同一目录下

 Cordova 打包签名 Android release app 过程详解及cordova创建app

4.第四部

进入dabao这个文件夹下,运行命令jarsigner -verbose -keystore name.keystore -signedjar name.apk name_unsigned.apk name.keystore,输入之前签名的录入的密码,经过编译,会生成最后的签名版本 name.apk.

 Cordova 打包签名 Android release app 过程详解及cordova创建app

 Cordova 打包签名 Android release app 过程详解及cordova创建app

至此,就完成了apk的打包签名

希望这篇文章能帮助到需要的朋友~~~~

 Cordova 打包签名 Android release app 过程详解及cordova创建app

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Stella981 Stella981
3年前
PhoneGap设置Icon
参考:http://cordova.apache.org/docs/en/latest/config\_ref/images.html通过config.xml中的<icon标签来设置Icon<iconsrc"res/ios/icon.png"platform"ios"width"57"height"57"densi
Stella981 Stella981
3年前
Html5混合开发环境的H5牛牛平台搭建
工具:AndroidSDK,JavaJDK,Node.js,Cordova、Ionic、python;1、androd需要配置:jdk路径和sdk配置;jdk配置环境变量:JAVA\_HOME:jdk安装目录,如:F:\\Java\\jdk1.8.0\_11%JAVA\_HOME%\\bin;%JAVA\_HOME%\\jre\\bi
Stella981 Stella981
3年前
Cordova之如何用命令行创建一个项目(完整示例)
原文:Cordova之如何用命令行创建一个项目(完整示例)(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fwww.cnblogs.com%2Fa418120186%2Fp%2F5226417.html)1\.创建cordova项目(注意:当第一次创建或编译项目的
Stella981 Stella981
3年前
Cordova应用的JavaScript代码和自定义插件代码的调试
我之前写过三篇Cordova相关的技术文章。当我们使用Cordova将自己开发的前端应用打包安装到手机上后,可能会遇到需要调试Cordova应用的时候。本文就介绍Cordova应用的调试步骤。如果大家读过之前我写的文章,就知道Cordova应用在移动平台上运行时,实际上Cordova包内的前端应用的HTML/JavaScript代码仍然运行在一个嵌入
Stella981 Stella981
3年前
Cordova
增加相机插件      cordovapluginaddcordovaplugincamera(如果删除add改为remove )增加文件上传插件   cordovapluginaddcordovapluginfiletransfer<!DOCTYPEhtml<html
Stella981 Stella981
3年前
Cordova一些问题
1\.2018年4月运行以前的cordova项目出错,新建项目也不行nodev6.10.4下,将cordova卸载,然后重装6.3.1$cnpmuninstallgcordova$cpnmigcordova@6.3.1$cordovacreatexxx2\.构建项目出错
Stella981 Stella981
3年前
Cordova app 检查更新
原文:Cordovaapp检查更新创建项目、添加插件、修改插件(一)(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fwww.cnblogs.com%2FToFlying%2Fp%2F5497871.html)  使用Cordova进行跨平台应用程序的开发 
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
美凌格栋栋酱 美凌格栋栋酱
5个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(