ionic 热更新插件cordova-hot-code-push的使用

原创 2016年08月30日 10:15:25
先安装插件,步骤如下

1、在APP目录下运行cordova plugin add cordova-hot-code-push-plugin


2、在APP目录下运行cordova plugin add cordova-hot-code-push-local-dev-addon


3、安装CLI:npm install -g cordova-hot-code-push-cli


在这一步的时候如果出现安装错误,可用以下办法解决:


A、安装python2.7,并将C:\Python27加入环境变量
B、安装VS2013_RTM_DskExp_CHS


开始配置


4、安装完成后运行cordova-hcp build ,之后www文件夹下面出现chcp.json以及chcp.manifest两个文件


A、chcp.json文件内容说明
{
  "autogenerated": true,
  "release": "2016.08.29-15.52.14",  //版本号
  "content_url": "http://www.123.com/www/",//WWW文件夹所在远程地址
  "update": "now"//分三种情况
// start - app启动时安装更新. 默认值.
// resume - app从后台切换过来的时候安装更新.
// now - web内容下载完毕即安装更新.

}


该文件每次运行cordova-hcp build 都会自动重新生成,为了方便,可以在APP项目的根目录下添加一个模板文件cordova-hcp.json,内容如下:
{
  "autogenerated": true,
  "release": "2016.08.29-16.52.27",
  "content_url": "http://www.123.com/www/",
  "update": "start"
}


B、chcp.manifest为文件清单


5、在APP项目的根目录下会生成一个.chcpenv的文件,打开该文件,编辑更新内容远程地址以及远程配置文件地址,如下:
{
  "content_url": "http://www.123.com/www/",
  "config_url": "http://www.123.com/www/chcp.json"
}

测试运行


6、打包运行APP,如ionic run android


7、随便更改一个APP内的页面内容,然后运行cordova-hcp build 生成最新的配置,再将整个WWW目录下的所有文件(包含chcp.json及chcp.manifest两个文件)复制到chcp.json内配置好的远程地址下。本例中是复制到远程IIS的WWW目录下


8、重新打开APP(记住要打开两次后才能看到效果),看看刚才的更新效果吧。



IOS下的配置


IOS的配置可能会因为插件版本的不同而不同。以下以1.4版本为例:

1、编译的时候会报‘_-swift.h’file not found 的错误,打开HCPLDPlugin.h文件,将头部#import "_-Swift.h"改成


#import "百家通云商城-Swift.h"  //这里的“百家通云商城”即为你的APP的名字,例如:

#ifdef __OBJC__
    #import "TestProject-Swift.h"
#endif



2、编译时如果报unknown type name 'SocketIOClient'错误,则需要确认#import "百家通云商城-Swift.h"这一行是否在HCPLDPlugin.h文件头部


3、在info.plist中加入


<key>NSMainNibFile~ipad</key>
<string></string>
<key>NSLocationWhenInUseUsageDescription</key>
<string></string>

4、Embedded content contains swift code设为YES

5、Embed Asset Packs in Product Bundle设为YES

否则在真机运行APP时会闪退,模拟器调试的时候则为出现

libc++abi.dylib: terminating with uncaught exception of type NSException*

的错误

闪退解决办法2:

在XCODE下--》WINDOW--》project--》你的项目名称-->DELETE derived data


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Ionic 热更新插件 cordova-hot-code-push-plugin的运用

其中,安装过程看官方文档即可:https://github.com/nordnet/cordova-hot-code-push 中途需要注意的几点: cordova plugin add cord...
  • ducp123
  • ducp123
  • 2017年06月16日 14:49
  • 271

cordova热更新插件 的安装与使用 以及代码示例下载(已完结)

所谓热更新就是,不在应用市场发布的情况下更新应用,大大的提高了代码的可维护性。 第一次写博客有写的不好的地方可以提出建议 本文参考的链接有: http://www.phonegap100.com/ar...

cordova-hot-code-push-plugin使用流程

热更新

ionic 热更新插件cordova-hot-code-push的实践

最近在做混合app,想用上热更新技术,就是用户不用重新安装客户端,就可以静默或提示用户更新里面的html js css img等文件, 就像支付宝过节,双十一换的图标一样,都是采用热更新了。 htt...

Cordova Hot Code Push插件实现自动更新App的Web内容

[Phonegap+Sencha Touch] 移动开发77 Cordova Hot Code Push插件实现自动更新App的Web内容 标签: androidwebappcordovaph...
  • wskai1
  • wskai1
  • 2017年03月01日 09:47
  • 1624

ionic2热更新插件cordova-hot-code-push-plugin更新下载文件

说下需求:在主项目中根据需要下载子项目(或文件),并子项目能利用主项目中的cordova-hot-code-push-plugin的跟随主项目更新。一个是包含全部子项目的页面,一个是选择下载子项目后的...
  • yah_529
  • yah_529
  • 2017年05月12日 16:36
  • 1650

【cordova】cordova热更新插件的问题(cordova-hot-code-push)

现在估计没多少用cordova的公司了吧,然而迫于公司老总的要求,非要让用H5(明明不懂android,非要干涉技术,小领导们也是敢怒不敢言,唉,越说越气),在这儿随便记录一下吧,如果恰巧有谁也用这个...

使用swift开发Cordova插件

最近研究了用swift开发cordova插件的问题,事实证明用swift开发cordova插件是完全可行的,不要再去折腾烦人的oc代码了!主要参考了一个地理围栏插件 https://github.co...
  • offbye
  • offbye
  • 2016年04月15日 15:55
  • 2242

[Phonegap+Sencha Touch] 移动开发77 Cordova Hot Code Push插件实现自动更新App的Web内容

地址:https://github.com/nordnet/cordova-hot-code-push 此插件提供了可以使cordova app自动更新web内容的功能机制。 基本上, 你A...

【Ionic】Ionic实现iOS与Android端代码『热更新』与Android升级下载功能 ( v1.3.x版本 )

热更新的好处 通常ionic源码可包括(HTML,JavaScript,CSS文件和其他资源),往常我们必须通过提交程序到应用市场,经过漫长的审核后才可让用户更新,每改动一个小地方都需要重新打新版本...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ionic 热更新插件cordova-hot-code-push的使用
举报原因:
原因补充:

(最多只允许输入30个字)