Estoy usando un temporizador Observable en este momento para abrir un modal durante los primeros 15 minutos y luego cada 24 horas.
presentUpgradeModel() { let timer = Observable.timer(900000, 86400000); timer.subscribe(t => { if (this.shouldShowUpgradeModal) { this.openUpgradeModel(); } }); }
Me pregunto si esto consume demasiados recursos en segundo plano o si hay una mejor manera de hacerlo. Es una aplicación móvil, por lo que no desea consumir muchos procesos en segundo plano.
Básicamente, solo quiero que aparezca un modal cada 24 horas más o menos.
¿Sería setTimeout mejor para esto?
Bueno, no se trata solo de los temporizadores, sino también de la aplicación de fondo en los móviles. En primer lugar, si el usuario cierra una aplicación, se suspenderá y no funcionará.
Si desea recibir mensajes como ese, busque notificaciones Push.
Claro que puede usar complementos para evitar la suspensión en segundo plano, pero entonces su aplicación usará batería.
Entonces, para resumir mejor, use las notificaciones Push para notificar a los usuarios o puede usar el complemento, pero luego no importa qué su aplicación usará la masa todo el tiempo
Y, por último, usaría observable para cosas relacionadas con el temporizador.
PD. Me olvidé del complemento nativo llamado Notificaciones locales . Le permite programar e incluso si la aplicación está cerrada, aún activará un proceso. este podría ser un camino a seguir