Skip to content

CodePush service is hot update services which adapter react-native-code-push and cordova-plugin-code-push - 热更新

License

Notifications You must be signed in to change notification settings

lisong/code-push-server

This branch is 1 commit ahead of master.

Folders and files

NameName
Last commit message
Last commit date
Sep 8, 2018
Jul 16, 2019
Nov 17, 2019
Dec 3, 2018
Aug 23, 2019
Sep 8, 2018
Oct 26, 2016
Aug 24, 2019
Sep 8, 2018
Sep 19, 2018
Sep 20, 2018
Oct 9, 2016
Jul 16, 2019
Mar 18, 2018
Sep 9, 2018
Aug 6, 2016
Sep 8, 2018
Aug 1, 2023
Aug 24, 2019
Mar 18, 2018
Sep 11, 2024
Sep 11, 2024

Repository files navigation

CodePush Server source

NPM

NPM Version Node.js Version Linux Status Windows Status Coverage Status Dependency Status Known Vulnerabilities Licenses

CodePush Server is a CodePush progam server! microsoft CodePush cloud is slow in China, we can use this to build our's. I use qiniu to store the files, because it's simple and quick! Or you can use [local/s3/oss/tencentcloud] storage, just modify config.js file, it's simple configure.

Support Storage mode

  • local storage bundle file in local machine
  • qiniu storage bundle file in qiniu
  • s3 storage bundle file in aws
  • oss storage bundle file in aliyun
  • tencentcloud storage bundle file in tencentcloud

正确使用code-push热更新

  • 苹果App允许使用热更新Apple's developer agreement, 为了不影响用户体验,规定必须使用静默更新。 Google Play不能使用静默更新,必须弹框告知用户App有更新。中国的android市场必须采用静默更新(如果弹框提示,App会被“请上传最新版本的二进制应用包”原因驳回)。
  • react-native 不同平台bundle包不一样,在使用code-push-server的时候必须创建不同的应用来区分(eg. CodePushDemo-ios 和 CodePushDemo-android)
  • react-native-code-push只更新资源文件,不会更新java和Objective C,所以npm升级依赖包版本的时候,如果依赖包使用的本地化实现, 这时候必须更改应用版本号(ios修改Info.plist中的CFBundleShortVersionString, android修改build.gradle中的versionName), 然后重新编译app发布到应用商店。
  • 推荐使用code-push release-react 命令发布应用,该命令合并了打包和发布命令(eg. code-push release-react CodePushDemo-ios ios -d Production)
  • 每次向App Store提交新的版本时,也应该基于该提交版本同时向code-push-server发布一个初始版本。(因为后面每次向code-push-server发布版本时,code-puse-server都会和初始版本比较,生成补丁版本)

shell login

$ code-push login http://api.code-push.com #登录

访问:http://www.code-push.com

client eg.

ReactNative CodePushDemo

Cordova CodePushDemo

HOW TO INSTALL code-push-server

DEFAULT ACCOUNT AND PASSWORD

  • account: admin
  • password: 123456

HOW TO USE

ISSUES

code-push-server normal solution

An unknown error occurred

modify password

UPDATE TIME LINE

  • targetBinaryVersion support
    • *
    • 1.2.3
    • 1.2/1.2.*
    • 1.2.3 - 1.2.7
    • >=1.2.3 <1.2.7
    • ~1.2.3
    • ^1.2.3

Advance Feature

use google diff-match-patch calculate text file diff patch

  • support iOS and Android
  • use "react-native-code-push": "git+https://[email protected]/lisong/react-native-code-push.git" instead "react-native-code-push": "x.x.x" in package.json
  • change apps.is_use_diff_text to 1 in mysql codepush database

License

MIT License read

About

CodePush service is hot update services which adapter react-native-code-push and cordova-plugin-code-push - 热更新

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages