一、本地Code Push 服务搭建
- 1、下载mysql
- 2、下载 code-push-server 仓库
git clone https://github.com/lisong/code-push-server.git cd code-push-server && npm install
- 3、配置config.js文件(code-push-server/config)
db: {
username: process.env.RDS_USERNAME || "root",
password: process.env.RDS_PASSWORD || "admin123",//你的MySQL访问密码,如果没有就null
database: process.env.DATA_BASE || "codepush",//如果你init的时候指定了数据库名字的话,也需要改
host: process.env.RDS_HOST || "127.0.0.1",
port: process.env.RDS_PORT || 3306,
dialect: "mysql",
logging: false,
operatorsAliases: false,
},
配置本地环境(token生成:https://www.grc.com/passwords.htm)
- 4、初始化数据库信息
node ./bin/db init --dbhost localhost --dbuser root --dbpassword admin123
- 5、启动本地的code-push服务端
node ./bin/www
二、客户端集成codepush
1、安装code-push-cli
npm install -g code-push-cli
2、注册账号
code-push login http://localhost:3000 (我这里就是http://192.168.2.194:3000/)
账户名admin 密码123456
3、填写token
4、创建应用
5、在项目根目录添加react-native-code-push
npm install react-native-code-push --save
#或者
yarn add react-native-code-push
6、link codepush
react-native link
7、android和ios配置
ios配置:Xcode info.plist 把我们获取的Staging对应的CodePushDeploymentKey填到上面就行了
<key>CodePushDeploymentKey</key>
<string>yORcekr3X5XIaKasYGxMK2raAL3Q4ksvOXqog</string>
<key>CodePushServerUrl</key>
<string>http://192.168.2.194:3000/</string>
7、主界面
componentDidMount(){
CodePush.sync(
{
installMode: CodePush.InstallMode.IMMEDIATE,
updateDialog: {
optionalIgnoreButtonLabel: '稍后',
optionalInstallButtonLabel: '立即更新',
optionalUpdateMessage: '有新版本,是否更新?',
title: '更新提示'
}
});
}
8、测试环节:运行项目,修改代码发布版本
react-native run-android
修改代码
发布版本 code-push release-react codeAndroid android
最后可以用dialog
react-native-code-push-dialog, yarn add react-native-code-push-dialog;
//在首页添加
<HotUpdate deploymentKey={'askjdkas32232dw32d'} isActiveCheck={false}/>