ionic 热更新插件cordova-hot-code-push的使用
2016-08-30 10:15
477 查看
先安装插件,步骤如下
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的名字,例如:
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
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的使用
- Ionic 热更新插件 cordova-hot-code-push-plugin的运用
- ionic 热更新插件cordova-hot-code-push的实践
- Ionic使用cordova-hot-code-push实现热更新
- cordova热更新插件cordova-hot-code-push的使用方法
- [Phonegap+Sencha Touch] 移动开发77 Cordova Hot Code Push插件实现自动更新App的Web内容
- 【cordova】cordova热更新插件的问题(cordova-hot-code-push)
- Cordova Hot Code Push插件实现自动更新App的Web内容
- ionic 1,2 cordova 之 热更新 cordova-hot-code-push
- [Phonegap+Sencha Touch] 移动开发77 Cordova Hot Code Push插件实现自己主动更新App的Web内容
- ionic 热更新 cordova-hot-code-push
- 转载《ionic 热更新 cordova-hot-code-push》
- 关于热理新Cordova Hot Code Push Plugin及cordova-hot-code-push-cli当前使用注意事项
- 使用CodePush实时更新 React Native 和 Cordova 应用
- 使用CodePush实时更新 React Native 和 Cordova 应用
- cordova-hot-code-push-plugin使用流程
- 使用CodePush实时更新 React Native 和 Cordova 应用
- cordova热更新插件的使用
- ionic -- 使用cordova的插件实现分享到QQ、微博、微信
- ionic项目中手机状态栏显示使用$cordovaStatusbar插件