先安装插件,步骤如下
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
C、保存插件
ionic state save
开始配置
4、安装完成后运行
cordova-hcp build
,之后www文件夹下面出现chcp.json以及chcp.manifest两个文件
打开另一个窗口
$ cordova-hcp server
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.在config.xml 文件中添加
<chcp>
<auto-download enabled="true" />
<auto-install enabled="true" />
<config-file url="服务器的地址 http://www.123.com/www/chcp.json" />
</chcp>
7.修改 chcp.json 文件
{
"autogenerated": true,
"release": "2017.01.20-13.37.00",
"content_url": "http://www.123.com/www",
"update": "now"
}
8.移除 cordova plugin add cordova-hot-code-push-local-dev-addon
命令行:
cordova plugin remove cordova-hot-code-push-local-dev-addon
注:把根目录下的www目录拷贝到服务器中
9.开始打包
ionic build android --release
platforms -- android -- build -- outputs -- apk -- android-release-unsigned.apk
复制到项目根目录
Git Bash Here
//生成key
keytool -genkey -alias ship.keystore -keyalg RSA -validity 1000 -keystore ship.keystore
说明:keytool -genkey -alias 别名.keystore -keyalg RSA -validity 有效期限(天数) -keystore 别名.keystore
例如:keytool -genkey -alias hello.keystore -keyalg RSA -validity 1000 -keystore hello.keystore
//签名
jarsigner -verbose -keystore ship.keystore -signedjar ship.apk android-release-unsigned.apk ship.keystore
说明:jarsigner -verbose -keystore 别名.keystore(密钥库位置) -signedjar 签名后产生的文件.apk 要签名的文件.apk 别名.keystore(密钥库)
例如:
jarsigner -verbose -keystore hello.keystore -signedjar hello.apk android-release-unsigned.apk hello.keystore
10.设置 icon 和 splash
解决方案:
1.ionic resources
2.ionic build android
3.将根目录下 res 文件夹中的内容复制粘贴到 platforms -- android -- res 中
11.安装热更新插件后,下次更新内容操作
A.cordova-hcp build / cordova build
B.把根目录下的www目录中的文件拷贝到服务器中(hotcode文件中)
例如:(本地服务器无法测试热更新??)
{
"content_url": "http://127.0.0.1:8020/tongzhou/hotcode",
"config_url": "http://127.0.0.1:8020/tongzhou/hotcode/chcp.json"
}