angular - Ionic 2/Angular 2 计时器

标签 angular ionic-framework ionic2

我现在正在使用 Observable 计时器在第一个 15 分钟打开一个模态,然后每 24 小时打开一个模态。

 presentUpgradeModel() {
    let timer = Observable.timer(900000, 86400000);
    timer.subscribe(t => {
      if (this.shouldShowUpgradeModal) {
        this.openUpgradeModel();
      }
    });

  }

我只是想知道这是否在后台消耗了太多资源,或者是否有更好的方法来做到这一点?它是一个移动应用程序,因此不想消耗大量后台进程。

基本上我只想每 24 小时左右弹出一个模式。

setTimeout 会更好吗?

最佳答案

它不仅与计时器有关,还与手机上的后台应用程序有关。首先,如果用户关闭应用程序,该应用程序将被暂停并且无法运行。

如果您想要这样的消息,请查看推送通知。

当然可以use plugins以防止背景 sleep ,但随后您的应用将使用电池。

所以总结一下,更好地使用推送通知来通知用户,或者您可以使用插件,但无论您的应用是什么,都将一直使用 batter

最后我会使用 observable 来处理与计时器相关的事情

附言。我忘记了名为 Local Notifications 的原生插件.它允许你安排,即使应用程序关闭它仍然会触发一个过程。这可能是一条路要走

关于angular - Ionic 2/Angular 2 计时器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43647653/

相关文章:

cordova - 由于与 google gms 服务版本冲突,FCMPlugin 构建失败

javascript - 如何隐藏选项中的文本 ionic2

javascript - 如何使用 Angular(8) UI 在远程 Linux 服务器上运行 shell 脚本?

angular - 如何使用有 Angular 和有 Angular Material 将步进器从一级移动到第二级

css - 如何在 Ionic 4 中更改选项卡栏和选项卡图标的背景颜色

html - div 上的 ionic 背景 img 不加载本地镜像,但从互联网 url 加载图像

css - 具有 "Half"边模式的 Angular Material Side Bar

http - Angular 2 HTTP 响应拦截器

javascript - Ionic Angular Js 向服务器发出 2 个请求

Ionic 2 应用程序中的 Firebase 身份验证网络错误