ionic3实现最基础的热更新功能

这两天给项目弄热更新,想了解下怎么弄,结果搜到竟是一些骚操作,看的脑壳疼,这里是我弄完之后整理出的最最基础的热更新操作,将扩展功能都抽离出去,只是实现热更新没有骚操作,我照着又重做了一遍避免出现笔误。

1、准备步骤

1.1、安装热更新插件

ionic cordova plugin add cordova-plugin-code-push

1.2、安装ionic本地支持

npm install --save @ionic-native/code-push

1.3、安装控制台

npm install -g code-push-cli

1.4、注册code-push

code-push register

会在弹出的浏览器窗口中注册,有的话请忽略

1.5、登录

code-push login

登录成功,然后出现一个token码,复制token码到终端

1.6、建立项目

code-push app add 项目名 系统类型(android/ios)平台(cordova或其他)

运行会返回项目的key,注意保留,后面会用到,返回的key有二个,这里只用Staging的key,以下所有用到key的地方,指的都是Staging的key,二者区别这里不进行介绍


1.7、在config.xml里添加如下内容

1.8、在config.xml里添加下面三行

*如果你的config.xml里有,可以不用添加

1.9、确认cordova-plugin-whitelist插件

输入cordova plugin ls命令,查看列表中是否有cordova-plugin-whitelist

如果没有则输入

cordova plugin add cordova-plugin-whitelist

1.10、app.module.ts中引入

import { CodePush } from '@ionic-native/code-push';

providers: [CodePush]



2、使用方法

发布更新不需要写任何代码,完全通过终端输入命令来操作

2.1、发布更新准备

Ionic cordova prepare android

Ionic项目发布前,需要执行这个命令打包*每次发布都要执行

2.2、发布到服务器

Code-push release-cordova 项目名 平台类型(android/ios)

后面可以跟多个参数选项,可以输入Code-push release-cordova ?来查看

列如对本次更新进行描述的设置方法:

Code-push release-cordova ionic3-hotnew-android android --description,=”0.0.2版本更新:优化系统性能,解决已知问题”

2.3、查看发布的状态(*非必须命令)

Code-push deployment ls 项目名

2.4、接收更新

this.codePush.sync().subscribe();

这个方法写在哪都行,什么时候触发就什么时候更新,不需要知道为什么,这是ionic的本地支持中提供的一个简便方法,里面将一系列的复杂操作进行了封装,简单到只用这一个方法就可以实现最基础的热更新,该方法还提供了一些参数选项进行有限的控制,包括下载进度,更新提示框等,感兴趣可以Ctrl+单击sync()去看看都有什么。

用这个方法之前需要在用的页面导入:

import { CodePush } from '@ionic-native/code-push';

并在构造器中声明:

private codePush: CodePush,

你可能感兴趣的:(ionic3实现最基础的热更新功能)