es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

IONIC/Capacitor: Traer la aplicación de Android al primer plano al accionar

Tenemos un caso de uso bastante común con nuestra aplicación generada para Android (a través de Capacitor):
Una vez que recibe un mensaje a través, por ejemplo, de un WebSocket (o de aplicaciones de terceros como OneSignal, Firebase, etc.), queremos llevar la aplicación al primer plano en caso de que el usuario esté interactuando actualmente con otras aplicaciones (como Skype, Whatsapp, etc.). La razón es que hemos implementado un escenario de “alarma” y si llega una alarma, la aplicación debe mostrarse en primer plano y mostrar lo que está sucediendo. Las notificaciones push simples no cumplirán con el trabajo aquí.

Así que investigamos sobre el tema, pero como no somos desarrolladores de Android nativos, no entendemos claramente el panorama completo.

Por ejemplo, https://stackoverflow.com/questions/65476441/android-bring-app-to-foreground-on-firebase-notification sugiere que a través de FLAG_ACTIVITY_REORDER_TO_FRONT, es posible llevar una aplicación de segundo plano a primer plano.

La pregunta es cómo se implementará esto en un escenario de aplicación híbrida (como con Cordova/IONIC/Capacitor).

En nuestra aplicación, estamos bastante avanzados para escuchar las señales de la API a través del WebSocket. Una vez que se recibe una alarma, somos capaces de enviar una señal a la aplicación a través del WebSocket, por lo que podemos hacer casi cualquier cosa. Por ejemplo, podríamos redirigir la señal desde la aplicación web de regreso al contenedor de la aplicación.

La pregunta ahora es cómo se puede resolver este escenario ya sea a través de WebSocket o Firebase (FCM), ¿y es posible resolverlo directamente a través de la arquitectura IONIC?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Llevar la aplicación de Capacitor Android al primer plano

    Para llevar una aplicación generada por Capacitor Android al primer plano una vez que recibe un mensaje a través de un Websocket o aplicaciones de terceros como OneSignal, Firebase, etc., es necesario implementar FLAG_ACTIVITY_REORDER_TO_FRONT. Sin embargo, el proceso de implementación puede no ser claro para los desarrolladores no nativos de Android.

    En un escenario de aplicación híbrida utilizando Cordova/IONIC/Capacitor, la aplicación puede escuchar señales de API a través de Websocket, y una vez que se recibe una alarma, se puede enviar una señal automáticamente a la aplicación. La señal se puede redirigir desde la aplicación web de vuelta al contenedor de la aplicación.

    Para resolver este escenario utilizando Websocket o Firebase (FCM), puede ser posible resolverlo directamente a través de la arquitectura IONIC. Se debe hacer una investigación adicional sobre cómo implementar FLAG_ACTIVITY_REORDER_TO_FRONT en aplicaciones generadas por Capacitor Android para llevarlas al primer plano.

Comments are closed.