Commit 91f859d6 by zeven

集成热更新

parent f01907b4
android @ 7982a59c
Subproject commit 3ad1b94b466271324b748db991622a91a28536be Subproject commit 7982a59c72c19718cd70423e8bf6aa1564dcc240
{ {
"name": "zm-face-counter", "name": "zm-face-counter",
"version": "1.0.0", "version": "1.0.2",
"private": true, "private": true,
"scripts": { "scripts": {
"android": "react-native run-android", "android": "react-native run-android",
"start": "react-native start", "start": "react-native start",
"test": "jest", "test": "jest",
"lint": "eslint --ext .js index.js src", "lint": "eslint --ext .js index.js src",
"apk": "cd android && ./gradlew app:assembleRelease && cp ./app/build/outputs/apk/release/app-release.apk ../fcounter.apk" "apk": "cd android && ./gradlew app:assembleRelease && cp ./app/build/outputs/apk/release/app-release.apk ../fcounter.apk",
"android-staging": "code-push release-react ZmFaceCounter-android android -t '1.0.0' --des '提升用户体验'",
"android-product": "code-push promote ZmFaceCounter-android Staging Production --des '提升用户体验'"
}, },
"pre-commit": [ "pre-commit": [
"lint" "lint"
...@@ -23,6 +25,7 @@ ...@@ -23,6 +25,7 @@
"react-native": "0.62.2", "react-native": "0.62.2",
"react-native-agora": "3.0.1-beta.5", "react-native-agora": "3.0.1-beta.5",
"react-native-background-timer": "2.2.0", "react-native-background-timer": "2.2.0",
"react-native-code-push": "^6.3.0",
"react-native-keyevent": "0.2.8", "react-native-keyevent": "0.2.8",
"react-native-qrcode-svg": "6.0.6", "react-native-qrcode-svg": "6.0.6",
"react-native-svg": "12.1.0", "react-native-svg": "12.1.0",
......
module.exports = {
dependencies: {
'react-native-code-push': {
platforms: {
android: null,
},
},
},
};
import React from 'react'; import React from 'react';
import {Dimensions} from 'react-native'; import {Dimensions, AppState} from 'react-native';
import AsyncStorage from '@react-native-community/async-storage'; import AsyncStorage from '@react-native-community/async-storage';
import {connect} from 'react-redux'; import {connect} from 'react-redux';
import qs from 'qs'; import qs from 'qs';
import axios from 'axios'; import axios from 'axios';
import io from 'socket.io-client'; import io from 'socket.io-client';
import codePush from 'react-native-code-push';
import Toast from './components/Toast'; import Toast from './components/Toast';
import Placeholder from './components/Placeholder'; import Placeholder from './components/Placeholder';
import router from './router'; import router from './router';
...@@ -17,6 +18,7 @@ import Installer from './utils/Installer'; ...@@ -17,6 +18,7 @@ import Installer from './utils/Installer';
import {counterInterval} from './utils/authInterval'; import {counterInterval} from './utils/authInterval';
import {counterLogin} from './utils/authLogin'; import {counterLogin} from './utils/authLogin';
import {host} from './utils/config'; import {host} from './utils/config';
import pack from '../package.json';
const {width: _width, height: _height} = Dimensions.get('window'); const {width: _width, height: _height} = Dimensions.get('window');
...@@ -76,6 +78,17 @@ class App extends React.Component { ...@@ -76,6 +78,17 @@ class App extends React.Component {
this.setState({ready: true}); this.setState({ready: true});
} }
componentDidMount() {
if (process.env.NODE_ENV === 'production')
Speech.speak(`当前版本${pack.version}`);
codePush.sync();
AppState.addEventListener('change', newState => {
if (newState === 'active') {
codePush.sync(); // 检查更新
}
});
}
listen = () => { listen = () => {
const {dispatch} = this.props; const {dispatch} = this.props;
window.socket.on('connect', () => { window.socket.on('connect', () => {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment