一、本地Code Push 服務(wù)搭建
- 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的時候指定了數(shù)據(jù)庫名字的話,也需要改
host: process.env.RDS_HOST || "127.0.0.1",
port: process.env.RDS_PORT || 3306,
dialect: "mysql",
logging: false,
operatorsAliases: false,
},
配置本地環(huán)境(token生成:https://www.grc.com/passwords.htm)

local.jpg

2.png
- 4、初始化數(shù)據(jù)庫信息
node ./bin/db init --dbhost localhost --dbuser root --dbpassword admin123 - 5、啟動本地的code-push服務(wù)端
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、創(chuàng)建應(yīng)用

生產(chǎn)/開發(fā)key.png
5、在項(xiàng)目根目錄添加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配置

4.png
ios配置:Xcode info.plist 把我們獲取的Staging對應(yīng)的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、測試環(huán)節(jié):運(yùn)行項(xiàng)目,修改代碼發(fā)布版本
react-native run-android
修改代碼
發(fā)布版本 code-push release-react codeAndroid android
最后可以用dialog
react-native-code-push-dialog, yarn add react-native-code-push-dialog;
//在首頁添加
<HotUpdate deploymentKey={'askjdkas32232dw32d'} isActiveCheck={false}/>