zoukankan      html  css  js  c++  java
  • 热更新 + 命令行 打包 (阶段总结)

    先安装插件,步骤如下
    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"
    }

  • 相关阅读:
    JMeter结构体系及运行原理
    maven pom配置文件样本
    django踩坑
    spring踩坑
    蓝牙连上电脑没声音
    XML 解析 & 特殊字符报错
    IDEA下maven工程的classpath
    mysql踩坑
    工作日记-9 远程接口调用注意点
    工作日记-8 ajax缓存
  • 原文地址:https://www.cnblogs.com/crazycode2/p/6367329.html
Copyright © 2011-2022 走看看