当前位置: 首页 > news >正文

cordova 项目打包开发

cordova 项目打包开发

cordova Android 项目开发常用插件以及配置修改

1.安装Cordova开发环境

node,cordova,jdk,sdk,gradle(java编译器) cordova 安装: npm install -g cordova

环境配置

jdk: 1.添加环境变量JAVA_HOME(jdk安装路径)

2.修改环境变量PATH(添加:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin) sdk: 1.添加环境变量ANDROID_HOME(sdk安装路径) 2.修改环境变量PATH(添加:%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools) gradle 1.修改环境变量PATH(添加gradle所在路径/bin)

创建项目

cordova create xxx com.example.xxx 别名(项目创建) cd xxx cordova platform add ...(平台安装) cordova pllugin add ...(插件安装)

取值描述
xxx文件名,项目简称(英文)
example公司域名
别明项目名,项目打包后的名字

项目打包

cordova build ... 这样打包生成的是调试版本的安装包,换一个电脑环境重新部署该项目,将生成一个新的项目,两则将appid不同,为解决该问题,应对应用进行签名打包部署,每一次进行小范围的修改都要重新打包安装,不便于开发使用,为解决该问题,引入热更新

签名打包

1.生成签名文件:keytool -genkey -v -keystore demo.keystore -alias demo -keyalg RSA -validity 20000 2.签名打包: cordova build android --release -- --keystore=../my-release-key.keystore --storePassword=password --alias=alias_name --password=password

取值描述
--keystore二进制文件的路径,可以容​​纳一组密钥
--storePassword密钥库的密码
--aliasid指定用于签名的私钥
--password指定私钥的密码
--keystoreType默认值:基于文件扩展名自动检测pkcs12或jks

热更新

1.安装热更新插件(cordova-hot-code-push-plugin) 2.安装热更新服务(npm install -g cordova-hot-code-push-cli) 3.配置热更新相关参数 cordova-hcp init

  // 根目录新建cordova-hcp.json文件
  {
    "name": "tyxt",
    "ios_identifier": "",
    "android_identifier": "",
    "update": "start", 
    "min_native_interface": 1,
      "content_url": '更新服务地址'
  }
复制代码

4.cordova-hcp build 5.将生成的文件从www目录下的文件拷贝到第三步配置的content_url目录下 6.修改config.xml配置文件

<!-- 添加以下代码 -->
<chcp>
<config-file url="更新服务地址"/>
</chcp>
复制代码

7.打包 8.小范围修改:执行第四五步骤 9.大范围修改:执行第四步到第七步骤

转载于:https://juejin.im/post/5cdacbf5f265da035d0c9ea1

相关文章:

  • XMLHttpRequest对象用法
  • python while/for
  • 森拓气液增压缸什么时候更换液压油_具体步骤
  • Entity Framework 丢失数据链接的绑定,在已绑好的EDMX中提示“Choose Your Data Connection”...
  • Mybatis3.x与Spring4.x整合
  • VRSCANS改变了PX集团的汽车渲染
  • Codeforces 535B Tavas and SaDDas 数位DP
  • 分布式事务
  • C# 深浅复制 MemberwiseClone
  • poj_1741——树的分治
  • vue中使用axios等异步方法this指向的问题
  • 教你学会Suse启动cron的方法
  • 关于BETA、RC、ALPHA、Release、GA等版本号的意义
  • 学习总结
  • 第十二周助教总结
  • Git初体验
  • Idea+maven+scala构建包并在spark on yarn 运行
  • IE报vuex requires a Promise polyfill in this browser问题解决
  • iOS 系统授权开发
  • JavaScript对象详解
  • JS函数式编程 数组部分风格 ES6版
  • nginx(二):进阶配置介绍--rewrite用法,压缩,https虚拟主机等
  • python大佬养成计划----difflib模块
  • React as a UI Runtime(五、列表)
  • Redis 中的布隆过滤器
  • 二维平面内的碰撞检测【一】
  • 给Prometheus造假数据的方法
  • 给新手的新浪微博 SDK 集成教程【一】
  • 精彩代码 vue.js
  • 学习使用ExpressJS 4.0中的新Router
  • postgresql行列转换函数
  • raise 与 raise ... from 的区别
  • ​ ​Redis(五)主从复制:主从模式介绍、配置、拓扑(一主一从结构、一主多从结构、树形主从结构)、原理(复制过程、​​​​​​​数据同步psync)、总结
  • ​2021半年盘点,不想你错过的重磅新书
  • #pragma once与条件编译
  • (1)SpringCloud 整合Python
  • (day 2)JavaScript学习笔记(基础之变量、常量和注释)
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第2节(共同的基类)
  • (poj1.3.2)1791(构造法模拟)
  • (论文阅读26/100)Weakly-supervised learning with convolutional neural networks
  • (十五)devops持续集成开发——jenkins流水线构建策略配置及触发器的使用
  • (学习日记)2024.03.25:UCOSIII第二十二节:系统启动流程详解
  • ./indexer: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object fil
  • ./和../以及/和~之间的区别
  • .Net CF下精确的计时器
  • .net core 6 使用注解自动注入实例,无需构造注入 autowrite4net
  • .Net Core与存储过程(一)
  • .NET 中各种混淆(Obfuscation)的含义、原理、实际效果和不同级别的差异(使用 SmartAssembly)
  • .netcore如何运行环境安装到Linux服务器
  • .NET轻量级ORM组件Dapper葵花宝典
  • @angular/cli项目构建--Dynamic.Form
  • @Autowired标签与 @Resource标签 的区别
  • [ C++ ] STL---string类的使用指南
  • [ linux ] linux 命令英文全称及解释
  • [145] 二叉树的后序遍历 js