ionic 3 热更新 Hot Code Push
最近用ionic 3 做的app业务做的差不多了,突然想到以后app如果有更新该怎么搞?想到我们的app后期更新应该不大,,最多就是改改bug和增加下用户体验,如果只有一些小的更新,然后提交各个应用商店,需要长时间的审核...鉴于我们制作android平台,再而我们用的技术是前端3大件:html,css和js,因此我计划用热更新来搞.
ionic热更新有两个插件:
- cordova-plugin-code-push 微软公司开发的插件(正好有一篇教程)
cordova-hot-code-push ionic 官方推荐的插件(正好还有一篇教程)
这两篇教程写的已经非常详细了,我感觉我都没有写的必要了.我采用第二个插件完成的我的需求,主要原因是:2个插件都支持远程服务器托管你的更新,你只需注册远程认证,通过命令行输入验证并且上传到远程服务器,来进行更新.但是第二个插件支持手动更新资源,将文件放在自己的服务器.具体采用哪种方式实现热更新取决于你的喜好了.
下面我来记录我在使用中遇到的问题:
在安装插件的时候
han@ubuntu:~/project/zero_app$ ionic cordova plugin add cordova-hot-code-push
> cordova plugin add cordova-hot-code-push --save
Error: Not found : cordova-hot-code-push
[ERROR] An error occurred while running subprocess cordova. cordova plugin add cordova-hot-code-push --save exited with exit code 1. Re-running this command with the --verbose flag may provide more information. han@ubuntu:~/project/zero_app$ cordova plugin add cordova-hot-code-push-plugin
Installing "cordova-hot-code-push-plugin" for android
Installing dependency packages:
ionic官方文档中提供的方法不行,使用 cordova plugin add cordova-hot-code-push-plugin 命令就可以了.
更改更新策略
我采用了教程默认的 now 方式,但是正式版肯定不能是 now ,我想用 cordova-hot-code-push-cli 插件来修改,我没找到解决方法,只能使用最原始的方法,使用 cordova-hcp init 重新生成一份配置:
han@ubuntu:~/project/zero_app$ cordova-hcp init
Running init
Please provide: Enter project name (required): zero app
Please provide: Amazon S3 Bucket name (required for cordova-hcp deploy):
Please provide: Path in S3 bucket (optional for cordova-hcp deploy):
Please provide: Amazon S3 region (required for cordova-hcp deploy): (us-east-1)
Please provide: IOS app identifier: cn.swifthealth.zeroapp
Please provide: Android app identifier: cn.swifthealth.zeroapp
Please provide: Update method (required): (resume) start
Please provide: Enter full URL to directory where cordova-hcp build result will be uploaded: http://192.168.1.81:8000/www/
Project initialized and cordova-hcp.json file created.
If you wish to exclude files from being published, specify them in .chcpignore
Before you can push updates you need to run "cordova-hcp login" in project directory
更新下载,更新安装方式
为了我开发方便,我使用了自动更新和自动安装,配置在congif.xml中
<chcp>
<auto-download enabled="true" />
<auto-install enabled="true" />
<config-file url="http://192.168.1.81:8000/www/chcp.json" />
</chcp>
自动安装更新肯定是不合适的,用户会感觉到自己被耍了,好好的使用着,在下次启动的时候跟上次一样了...我会在以后修改为让用户自动选择.
ionic 3 热更新 Hot Code Push的更多相关文章
- Ionic APP 热更新 之 产品发布状态下的热更新搭建,去local-dev-addon插件
上一篇,我们介绍了在本地开发环境下的ionic项目热更新测试, 本文,我们将详细说明如何在去掉cordova-hot-code-push-local-dev-addon插件的情况下,实现热更新. 使用 ...
- ionic cordova 热更新(引用自www.zyyapp.com/post/116.html)
上篇文章cordova 把html打包成安卓应用 http://www.zyyapp.com/post/115.html cordova 热更新是一个大坑,我看了一天一夜才明白.网上的教程都没说到重点 ...
- ionic cordova 热更新的一些问题
因为项目需要用到更新这一块的东西,所以就查了下cordova 的热更新,然后遇到了 一些问题,记录下来备忘. 项目用的是ionic 下载cordova的内容就直接跳过了. 首先是下载cordova的插 ...
- Ionic APP 热更新
开门见山,本文主题:cordova-hot-code-push 作用:cordova热更新插件,提供了在应用程序中对基于Web的内容进行自动更新的功能. GitHub地址:https://github ...
- ionic cordova 热更新
因为项目需要,使用cordova的热更新插件,本地调试很简单,看连接https://github.com/nordnet/cordova-hot-code-push,就几步,这里不说了. 下面两个要装 ...
- ionic 热更新 cordova-hot-code-push
cordova-hot-code-push ,Cordova热代码推送插件提供了在应用程序中执行基于Web的内容的自动更新的功能.使用此插件可以更新存储在项目的www文件夹中的所有内容. cordov ...
- 转载《ionic 热更新 cordova-hot-code-push》
cordova-hot-code-push ,Cordova热代码推送插件提供了在应用程序中执行基于Web的内容的自动更新的功能.使用此插件可以更新存储在项目的www文件夹中的所有内容. cordov ...
- [Phonegap+Sencha Touch] 移动开发77 Cordova Hot Code Push插件实现自己主动更新App的Web内容
原文地址:http://blog.csdn.net/lovelyelfpop/article/details/50848524 插件地址:https://github.com/nordnet/cord ...
- Cordova热更新cordova-hot-code-push
原文转载自:https://www.cnblogs.com/huangenai/p/7137475.html cordova-hot-code-push ,Cordova热代码推送插件提供了在应用程序 ...
随机推荐
- Python——Tk控件说明
控件 描述 具体说明 Button 按钮 点此链接 Canvas 提供绘图形状的功能,包含图像和位图 点此链接 Checkbutton 多选框 点此链接 Entry 单行文本框 点此链接 Fr ...
- [模板] 笛卡尔树 && RMQ
话说我noip之前为什么要学这种东西... 简介 笛卡尔树(Cartesian Tree) 是一种二叉树, 且同时具有以下两种性质: 父亲节点的值大于/小于子节点的值; 中序遍历的结果为原序列. 笛卡 ...
- ORM基础之字段及其参数介绍
一.外键ForeignKey 1.字段参数 1.to 设置要关联的表 2.to_field 设置要关联的表的字段(一般不设置,默认使用主键id关联) 3.related_name 反向操作时,使用的字 ...
- 【译】1. Java反射——引言
原文地址:http://tutorials.jenkov.com/java-reflection/index.html *By Jakob Jenkov Java的反射机制使得它可以在运行时检查类.接 ...
- Springboot 1.简介 及第一个demo
按照官网上的新建一个maven项目,然后将类引入pom.xml文件中 <?xml version="1.0" encoding="UTF-8"?> ...
- JS学习笔记Day14
一.正则表达式 (一)正则的概念 1.正则表达式是一种特殊的字符串模式,用于匹配一组字符串,就好比用模具做产品,而正则就是这个模具,定义一种规则去匹配符合规则的字符 (二)创建正则的方式 1.字面量的 ...
- 应用调试(三)oops
目录 应用调试(三)oops 引入 配置内核打开用户oops CONFIG_DEBUG_USER user_debug 设置启动参数测试 打印用户堆栈 分析栈 main的调用 title: 应用调试( ...
- IMPLEMENTING A GRU/LSTM RNN WITH PYTHON AND THEANO - 学习笔记
catalogue . 引言 . LSTM NETWORKS . LSTM 的变体 . GRUs (Gated Recurrent Units) . IMPLEMENTATION GRUs 0. 引言 ...
- 主机管理+堡垒机系统开发:webssh(十)
一.安装shellinabox 1.安装依赖工具 yum install git openssl-devel pam-devel zlib-devel autoconf automake libtoo ...
- ACM-ICPC 2018 徐州赛区网络预赛 B BE, GE or NE(记忆化搜索)
https://nanti.jisuanke.com/t/31454 题意 两个人玩游戏,最初数字为m,有n轮,每轮三个操作给出a b c,a>0表示可以让当前数字加上a,b>0表示可以让 ...