1.安装基本框架
npm install -g ionic@latest
npm install -g cordova ionic
验证版本号
ionic –version
cordova -version
2.新建ionic项目
ionic start myapp 会显示选项列表
tabs:创建一个选项卡项目
blank:创建一个空白项目
sidemenu:创建一个侧边菜单项目
super: 创建一个预制的完整项目,提供ionic开发最佳实践
conference:创建一个展示真是应用的项目
tutorial:创建一个基于ionic文档的教程项目
aws: 创建一个移动集成器启动项目
任意选择一个新建即可
3.进入项目文件夹
cd myapp
执行下面命令可以预览项目
ionic serve
正常显示后可以关掉服务Ctrl+C,此步骤只是保证ionic新建项目成功
4.ios目前已不支持热更新,所以只对Android平台进行设置

设置Android平台
ionic cordova platform add android
设置安卓版本需修改下面文件内容
platforms/android/project.properties
和platforms/android/CordovaLib/project.properties
中的target=“你有的sdk版本” 安装热更新插件
ionic cordova plugin add cordova-hot-code-push-plugin
ionic cordova plugin add cordova-hot-code-push-local-dev-addon
npm install -g cordova-hot-code-push-cli
5.在config.xml配置文件中加入下面节点
<chcp>
<config-file url="http://192.168.1.203:8121/chcp.json" />
<native-interface version="1" />
</chcp>
第一个子节点是需要发布在iis上的文件地址
第二个子节点是当前版本号
还有其它配置此处不再罗列
6.新开一个终端执行下面命令
cordova-hcp server
如果能够正常输出类似
Running server
Checking: /ionic/myapp/www/
local_url http://localhost:31284
Warning: .chcpignore does not exist.
Build 2017.10.27-10.17.48 created in ionic/myapp/www
cordova-hcp local server available at: http://localhost:31284
cordova-hcp public server available at: https://5027caf9.ngrok.com

检查/项目名称/www 路径下 有chcp.json和chcp.manifest表示热更新服务启动正常
7.在项目根目录下新建模板 cordova-hcp.json
{
"content_url": "http://192.168.31.62:8121",
"autogenerated": true,
"update": "now"
}
以后发布时只需执行
cordova-hcp build命令,就可以把模板内容替换到chcp.json文件内,因为每次更新或者发布app都会使热更新服务重新生成chcp.json文件内容
8.构建iis,路径指向/项目名称/www 文件夹,也可以把www文件夹部署在你指定的位置。检查chcp.json文件是否能访问,若不能访问
针对iis7+
在IIS的站点属性的HTTP头设置里,选MIME 映射中点击”文件类型”-”新类型”,添加一个文件类型:
关联扩展名:.json
内容类型(MIME):application/x-javascript
9.生成apk
ionic cordova build android
此时热更新服务不能停止,一个终端执保持热更新服务,另一个终端执行其它命令
生成后执行
cordova-hcp build 复制模板文件
然后通过iis访问地址,检查页面显示是否正常,json文件是否可以访问,json文件内的ip地址是否是iis的发布地址
在手机上安装此apk
10.对项目界面或者功能进行修改
然后对配置文件config.xml的chcp节点的版本号进行修改
<native-interface version="2" />
重新生成apk
ionic cordova build android
通过iis访问检查页面和功能是否修改
执行 cordova-hcp build 然后检查iis上的json文件是否修改
关掉手机上原来的程序,重新打开程序,可以看到页面或者功能已变更。有时候更新会有延迟。

琐碎的资料

1. http://localhost:8100/ionic-lab 可以看到模拟器

2. 新建模块命令 ionic g page login

3. 新建服务命令 ionic g provider MyData

4. 在虚拟机上执行命令 ionic cordova emulate android -l -c

ionic3 热更新发布步骤记录的更多相关文章

  1. ElasticSearch5.0+版本分词热更新实践记录

    前言 刚开始接触ElasticSearch的时候,版本才是2.3.4,短短的时间,现在都更新到5.0+版本了.分词和head插件好像用法也不一样了,本博客记录如何配置Elasticsearch的Hea ...

  2. Android代码混淆及项目发布方法记录

     Android代码混淆及项目发布步骤记录 本来整理了一份Android项目混淆与发布的文档,突然想到何不写篇博客,分享一下呢,如是便有了本文. Android代码混淆及项目发布步骤记录 一.清理 ...

  3. 深入理解xLua热更新原理

    热更新简介 热更新是指在不需要重新编译打包游戏的情况下,在线更新游戏中的一些非核心代码和资源,比如活动运营和打补丁.热更新分为资源热更新和代码热更新两种,代码热更新实际上也是把代码当成资源的一种热更新 ...

  4. 使用Fiddler劫持网络资源为前端开发助力(示例:Dynamic CRM 表单开发 也能热更新? )

    背景: 使用过vue开发的童鞋应该都知道,在开发vue项目的过程中,有个叫"热更新"的功能特别爽,在传统html开发到初次接触vue时,才发现原来前端开发可以这么香.热更新的表现形 ...

  5. 【笔记】Nginx热更新相关知识

    (以下学习笔记内容均摘自参考链接,仅供个人查阅)   1.inotify文件系统监控特性 Inotify 是一个 Linux 内核特性,它监控文件系统,并且及时向专门的应用程序发出相关的事件警告,比如 ...

  6. Ionic APP 热更新 之 产品发布状态下的热更新搭建,去local-dev-addon插件

    上一篇,我们介绍了在本地开发环境下的ionic项目热更新测试, 本文,我们将详细说明如何在去掉cordova-hot-code-push-local-dev-addon插件的情况下,实现热更新. 使用 ...

  7. 安卓热更新之Nuwa实现步骤

    安卓热更新之Nuwa实现步骤 最近热更新热修复的功能在安卓应用上越发火热,终于我的产品也提出了相应的需求. 经过两天的研究,搞定了这个功能,在这里还要多谢大神们的博客,大神们的原理分析很到位,不过对于 ...

  8. ionic3应用的Android打包签名发布步骤

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

  9. Unity官方发布热更新方案性能对照

    孙广东  2016.3.11 Unity应用的iOS热更新 作者:丁治宇 Unity TechnologiesChina Agenda •  什么是热更新 •  为何要热更新 •  怎样在iOS 上对 ...

随机推荐

  1. 树状DP HDU1520 Anniversary party

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1520 题意:职员之间有上下级关系,每个职员有自己的happy值,越高在派对上就越能炒热气氛.但是必须是 ...

  2. linux中pam模块

    https://www.cnblogs.com/ilinuxer/p/5087447.html linux中pam模块 一.pam简介 Linux-PAM(linux可插入认证模块)是一套共享库,使本 ...

  3. select * from 后有多个表的使用方法

    已知一个表的结构为: ------------------- 姓名 科目 成绩 张三 语文 20 张三 数学 30 张三 英语 50 李四 语文 70 李四 数学 60 李四 英语 90   怎样通过 ...

  4. 查看apk文件包名的一些方法

    1,如果有源码 直接将apk包修改为zip,并解压找到AndroidManifest.xml文件,在文件中搜索“package”找到相应的包名 2,使用adb命令 前提是已经下载android SDK ...

  5. Centos7配置TiDB监控

    一: 1.1:http://192.168.1.12:3000/ 1.2:点击install Grafana wget https://dl.grafana.com/oss/release/grafa ...

  6. OO课程中IDEA相关插件的使用

    写在前面   由于OO课程博客作业的需要分析代码的复杂度并绘制UML图,但是课件上推荐的分析工具(http://metrics.sourceforge.net )经过自己几个小时的折腾还是没有安装成功 ...

  7. springcloud学习计划

    后续参考学习spring cloud https://blog.csdn.net/forezp/article/details/70148833 https://github.com/forezp/S ...

  8. Java语法基础学习DayEighteen(常用类)

    一.String类 1.特点 String代表不可变的字符序列,底层用char[]存放. String是final的. 2.内存解析 3.常用方法 int length() char charAt(i ...

  9. Oracle 创建存储过程 提示权限不足或者提示表和视图不存在问题

    grant create view to hospital; --授予查询权限 grant select any table to hospital; --授予权限 grant select any ...

  10. 解决Error parsing SQL Mapper Configuration. Cause: java.io.IOException: Could not find resource com/cqupt/paging/dao/User.xml

    搭建了一个ssm项目,启动报错Error parsing SQL Mapper Configuration. Cause: java.io.IOException: Could not find re ...