热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Cordova打包署名Androidreleaseapp历程详解及cordova建立app

良久之前就想写这篇博客,然则一向没有时刻,本日抽空来整顿一下,总结一下cordova的建立、打包、署名apk。关于cordova所需的打包环境,如node,cordova的装置,这

良久之前就想写这篇博客,然则一向没有时刻,本日抽空来整顿一下,总结一下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》


推荐阅读
  • loader资源模块加载器webpack资源模块加载webpack内部(内部loader)默认只会处理javascript文件,也就是说它会把打包过程中所有遇到的 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • 1,关于死锁的理解死锁,我们可以简单的理解为是两个线程同时使用同一资源,两个线程又得不到相应的资源而造成永无相互等待的情况。 2,模拟死锁背景介绍:我们创建一个朋友 ... [详细]
  • 程序员如何选择机械键盘轴体?红轴和茶轴对比
    本文介绍了程序员如何选择机械键盘轴体,特别是红轴和茶轴的对比。同时还介绍了U盘安装Linux镜像的步骤,以及在Linux系统中安装软件的命令行操作。此外,还介绍了nodejs和npm的安装方法,以及在VSCode中安装和配置常用插件的方法。最后,还介绍了如何在GitHub上配置SSH密钥和git的基本配置。 ... [详细]
  • struts2重点——ValueStack和OGNL
    一、值栈(ValueStack)1.实现类:OGNLValueStack2.对象栈:CompoundRoot( ... [详细]
  • android ... [详细]
  • React 小白初入门
    推荐学习:React官方文档:https:react.docschina.orgReact菜鸟教程:https:www.runoob.c ... [详细]
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • Java实战之电影在线观看系统的实现
    本文介绍了Java实战之电影在线观看系统的实现过程。首先对项目进行了简述,然后展示了系统的效果图。接着介绍了系统的核心代码,包括后台用户管理控制器、电影管理控制器和前台电影控制器。最后对项目的环境配置和使用的技术进行了说明,包括JSP、Spring、SpringMVC、MyBatis、html、css、JavaScript、JQuery、Ajax、layui和maven等。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • WebSocket与Socket.io的理解
    WebSocketprotocol是HTML5一种新的协议。它的最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话,属于服务器推送 ... [详细]
  • Redis底层数据结构之压缩列表的介绍及实现原理
    本文介绍了Redis底层数据结构之压缩列表的概念、实现原理以及使用场景。压缩列表是Redis为了节约内存而开发的一种顺序数据结构,由特殊编码的连续内存块组成。文章详细解释了压缩列表的构成和各个属性的含义,以及如何通过指针来计算表尾节点的地址。压缩列表适用于列表键和哈希键中只包含少量小整数值和短字符串的情况。通过使用压缩列表,可以有效减少内存占用,提升Redis的性能。 ... [详细]
  • npmrunbuild后dist文件夹下面直接浏览器打开index.html,css和js的路径都不正确。放到跟目录下就正常了,iis上同样只能在根目录下。我项目的目录如下: ... [详细]
  • Vue基础一、什么是Vue1.1概念Vue(读音vjuː,类似于view)是一套用于构建用户界面的渐进式JavaScript框架,与其它大型框架不 ... [详细]
author-avatar
陈思有婚纱梦127092
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有