mirror of
https://gitcode.com/gh_mirrors/re/react-native-pushy.git
synced 2025-09-19 00:00:39 +08:00
使用async写法
This commit is contained in:
@@ -50,9 +50,8 @@ export default class App extends Component {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
doUpdate = info => {
|
doUpdate = async info => {
|
||||||
downloadUpdate(info)
|
const hash = await downloadUpdate(info);
|
||||||
.then(hash => {
|
|
||||||
Alert.alert('提示', '下载完毕,是否重启应用?', [
|
Alert.alert('提示', '下载完毕,是否重启应用?', [
|
||||||
{
|
{
|
||||||
text: '是',
|
text: '是',
|
||||||
@@ -68,19 +67,20 @@ export default class App extends Component {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
]);
|
]);
|
||||||
})
|
|
||||||
.catch(err => {
|
|
||||||
Alert.alert('提示', '更新失败.');
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
|
|
||||||
checkUpdate = () => {
|
checkUpdate = async () => {
|
||||||
if (__DEV__) {
|
if (__DEV__) {
|
||||||
// 开发模式不支持热更新,跳过检查
|
// 开发模式不支持热更新,跳过检查
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
checkUpdate(appKey)
|
let info;
|
||||||
.then(info => {
|
try {
|
||||||
|
info = await checkUpdate(appKey);
|
||||||
|
} catch (err) {
|
||||||
|
console.warn(err);
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (info.expired) {
|
if (info.expired) {
|
||||||
Alert.alert('提示', '您的应用版本已更新,请前往应用商店下载新的版本', [
|
Alert.alert('提示', '您的应用版本已更新,请前往应用商店下载新的版本', [
|
||||||
{
|
{
|
||||||
@@ -107,10 +107,6 @@ export default class App extends Component {
|
|||||||
],
|
],
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
})
|
|
||||||
.catch(err => {
|
|
||||||
console.warn(err);
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
|
@@ -20,10 +20,7 @@ const {appKey} = _updateConfig[Platform.OS];
|
|||||||
异步函数checkUpdate可以检查当前版本是否需要更新:
|
异步函数checkUpdate可以检查当前版本是否需要更新:
|
||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
checkUpdate(appKey)
|
const info = await checkUpdate(appKey)
|
||||||
.then(info => {
|
|
||||||
})
|
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
返回的info有三种情况:
|
返回的info有三种情况:
|
||||||
@@ -97,23 +94,30 @@ class MyProject extends Component {
|
|||||||
Alert.alert('提示', '刚刚更新失败了,版本被回滚.');
|
Alert.alert('提示', '刚刚更新失败了,版本被回滚.');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
doUpdate = info => {
|
doUpdate = async info => {
|
||||||
downloadUpdate(info).then(hash => {
|
try {
|
||||||
|
const hash = await downloadUpdate(info);
|
||||||
Alert.alert('提示', '下载完毕,是否重启应用?', [
|
Alert.alert('提示', '下载完毕,是否重启应用?', [
|
||||||
{text: '是', onPress: ()=>{switchVersion(hash);}},
|
{text: '是', onPress: ()=>{switchVersion(hash);}},
|
||||||
{text: '否',},
|
{text: '否',},
|
||||||
{text: '下次启动时', onPress: ()=>{switchVersionLater(hash);}},
|
{text: '下次启动时', onPress: ()=>{switchVersionLater(hash);}},
|
||||||
]);
|
]);
|
||||||
}).catch(err => {
|
} catch(err) {
|
||||||
Alert.alert('提示', '更新失败.');
|
Alert.alert('提示', '更新失败.');
|
||||||
});
|
}
|
||||||
};
|
};
|
||||||
checkUpdate = () => {
|
checkUpdate = async () => {
|
||||||
if (__DEV__) {
|
if (__DEV__) {
|
||||||
// 开发模式不支持热更新,跳过检查
|
// 开发模式不支持热更新,跳过检查
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
checkUpdate(appKey).then(info => {
|
let info;
|
||||||
|
try {
|
||||||
|
info = await checkUpdate(appKey);
|
||||||
|
} catch (err) {
|
||||||
|
console.warn(err);
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (info.expired) {
|
if (info.expired) {
|
||||||
Alert.alert('提示', '您的应用版本已更新,请前往应用商店下载新的版本', [
|
Alert.alert('提示', '您的应用版本已更新,请前往应用商店下载新的版本', [
|
||||||
{text: '确定', onPress: ()=>{info.downloadUrl && Linking.openURL(info.downloadUrl)}},
|
{text: '确定', onPress: ()=>{info.downloadUrl && Linking.openURL(info.downloadUrl)}},
|
||||||
@@ -126,9 +130,6 @@ class MyProject extends Component {
|
|||||||
{text: '否',},
|
{text: '否',},
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
}).catch(err => {
|
|
||||||
console.warn(err);
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
render() {
|
render() {
|
||||||
return (
|
return (
|
||||||
|
Reference in New Issue
Block a user