ionic-framework - 是否可以在应用程序使用 ionic deploy 下载和更新最新代码时显示消息?
问题描述
我使用自动更新方法使用 ionic pro 更新应用程序,问题是当互联网连接速度较慢时,应用程序需要更多时间来更新应用程序,启动画面显示时间很长。
用户认为应用程序存在问题,并在启动画面中挂起。
在启动屏幕更新应用程序时,有什么方法可以显示消息?至少用户会知道应用程序正在更新。
<plugin name="cordova-plugin-ionic" spec="5.3.0">
<variable name="APP_ID" value="xxxxxx" />
<variable name="CHANNEL_NAME" value="Production" />
<variable name="UPDATE_METHOD" value="auto" />
<variable name="UPDATE_API" value="https://api.ionicjs.com" />
<variable name="MAX_STORE" value="2" />
<variable name="MIN_BACKGROUND_DURATION" value="30" />
</plugin>
解决方案
我认为不可能在启动画面上显示更新。但可以显示更新处理。这是给你的完整代码。
Pro.deploy.checkForUpdate().then((update) => {
console.log(update);
if (typeof update !== 'undefined') {
if (update.available) {
let alert = self.alertCtrl.create({
title: 'Update Available',
message: 'There is an update available. Would you like to get it?',
buttons: [
{
text: 'Cancel',
role: 'cancel'
},
{
text: 'Ok',
handler: () => {
this.performManualUpdate();
}
}
]
});
alert.present();
}
}
});
async performManualUpdate() {
try {
let loader = this.loadingCtrl.create({
content: "Updating...",
});
loader.present();
await Pro.deploy.downloadUpdate((progress) => {
this.downloadProgress = progress;
})
await Pro.deploy.extractUpdate();
await Pro.deploy.reloadApp();
loader.dismiss();
} catch (err) {
console.log(err);
}
}
推荐阅读
- python - 导入自定义 truetype 字体时出现 PIL OSError
- unity3d - 方法更新是异步的?-统一
- django - 在 Django 中包含每个模板及其 CSS
- android - 执行值更改后未调用 LiveData 观察者
- ios - Cloudkit - 仪表板 - 此数据库中没有“实体”记录
- java - vertx 到达外部地址
- reactjs - React Native:您应该何时/多久更新一次库?
- python - 如何使用 Tesseract 从图像中转换或提取表格?
- javascript - How can I add a variable in place f a constant in javascript
- python - How IIS recognize Chinese character in URL