ionic 项目的热跟新以及部分文件忽略更新讲解

首先贴上我们这个插件的GitHub上的地址 https://github.com/nordnet/cordova-hot-code-push

然后电脑上的环境需要安装node (安装node的时候就会安装npm)  ionic cordova android 等等基础环境,这些各位看官可以自行百度安装。

接着准备一台服务器,一台电脑,一个手机。准备之后就开始我们今天的主要内容了。


1.创建一个ionic项目并添加对应平台。

我使用编辑器是phpStorm.然后打开编辑器中的terminal,(这个其实就是一个cmd环境,如果不喜欢也可以用cmd)。

ionic start myApp blank

cd myApp

cordova platform add android/ios


2.安装插件 

       cordova plugin add cordova-hot-code-push-plugin 

安装完这个插件 还要装一个全局插件。

npm install -g cordova-hot-code-push-cli


3.服务器搭建。

1)在服务器上创建一个myApp的文件夹

2)配置Nginx  

server {
   
   
    location ~ ^\/myApp {
                index  index.html;
                root /www/;
            }
    listen       80;
    server_name  localhost;
}

如果你会使用其他服务也是可以的。

     3)服务器上也安装第二步的全局插件 npm install -g cordova-hot-code-push-cli


4.安装完上面那个全局插件后就可以使用下面命令生成cordova-hcp.json

cordova-hcp init

修改cordova-hcp.json 文件改为

{

"update":"start",

"content_url":"http://103.103.103.103/myApp/www",

"min_native_interface":10

}

   这里要注意upate的几个参数

  ● start :app启动时安装更新. 默认值.
  ● resume : app从后台切换过来的时候安装更新.
  ● now :web内容下载完毕即安装更新.

 在ios上使用start和resume 参数测试的时候都要重启应用两次才会生效,而使用now的时候只需要重启应用就可以看到效果了



5.如果你要忽略某些文件的热跟新你就要创建一个 .chcpignore文件,文件中加入你要忽略的文件

**/lib/**     忽略lib下

**/login/**/login.html    忽略login文件夹下的login.html文件

(注意,所有忽略的条件用**/开头,一个忽略条件和另一个忽略条件之间用换行隔开,如果是同一行,则第一个忽略条件失效)



6.使用cordova-hcp build,然后你会发现在www文件夹中会多出chcp.mainfest 和chcp.json文件。

查看chcp.mainfest文件中会给www下所有的文件一个hash值,而上一步中忽略的文件则没有hash值


7.配置config.xml文件    在config.xml的</widget>上面加入以下内容,注意native-interface要比min_native_interface大

 <chcp>
        <config-file url="http://103.103.103.103/myApp/www/chcp.json"/>
        <native-interface version="20" />
    </chcp>

8.将我们的myApp中的文件复制到服务器的myApp文件夹中


9.cordova run android将应用安装到手机上。


10.现在到服务器上随便改一个文件 (当然是没有忽略的文件)然后 到这个项目的目录下使用 cordova-hcp build 命令


11.退出应用,然后再次打开这个应用的时候,你就会发现你改的内容已经显示在了我们的手机上了。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值