¿Cómo puedo crear una aplicación Android que no se pueda cerrar así como WhatsApp? – android android

Pregunta:


¿Cómo hacer que mi aplicación no se pueda cerrar? Esto no quiere decir que no se pueda forzar detención.

Lo que vi es que WhatsApp no se puede cerrar al igual que otras apps,
siguen corriendo cuando le doy al botón rápido de cerrar aplicaciones.

Preguntado por: Alexander

Todas las aplicaciones se cierran, creo que tienes una falta de conocimiento del ciclo de vida de una aplicacion y de las activities, fragments, etc.

Te explico.

Las aplicaciones podemos decir que pueden tener 2 estados. Primer plano y segundo plano.

El primer plano es cuando la tienes abierta y la ves en tu pantalla.
Segundo plano es cuando no esta en pantalla y se ejecuta.

En el caso de whatsapp lo que sucede es que tienes un servicio que esta siempre a la espera de recibir una notificación(un mensaje, una llamada, etc)

Lo que necesitas es un servicio para que tu aplicación siempre este a la espera, crear un servicio es sencillo.

Esta es la definición sencilla de un IntentService que te puede service:

public class HelloIntentService extends IntentService {

  /**
   * A constructor is required, and must call the super IntentService(String)
   * constructor with a name for the worker thread.
   */
  public HelloIntentService() {
      super("HelloIntentService");
  }

  /**
   * The IntentService calls this method from the default worker thread with
   * the intent that started the service. When this method returns, IntentService
   * stops the service, as appropriate.
   */
  @Override
  protected void onHandleIntent(Intent intent) {
      // Normally we would do some work here, like download a file.
      // For our sample, we just sleep for 5 seconds.
      try {
          Thread.sleep(5000);
      } catch (InterruptedException e) {
          // Restore interrupt status.
          Thread.currentThread().interrupt();
      }
  }
}

En realidad Whatsapp se cierra, lo que sucede es que está en ejecución un servicio en segundo plano, puedes investigar un poco servicios y adaptadores para sincronización de datos en el siguiente link.

Servicios
https://developer.android.com/guide/components/services.html

Adaptadores
https://developer.android.com/training/sync-adapters/creating-sync-adapter.html

Fuente

Related Posts:

Push notifications to devices and browsers via Pushbullet
...
Send messages to mobile devices with Google Firebase.
...
A PHP library for easy PushOver service use: send real-time notifications to your Android and iOS devices.
...
A simple PHP library for the Pushover service
...
Google Cloud Messaging (GCM) PHP Server Library
...
Read basic info about an application from .apk file.
...
A PHP library for sending GCM messages
...
A Bundle for Symfony2 projects to send notifications in mobile devices through Firebase Cloud Messaging API
...
PHP API for Firebase Cloud Messaging from Google
...
PHP application server for google firebase cloud messaging (FCM)
...
Standalone PHP library for easy devices notifications push.
...
Girar Rectángulo con LibGDX – android libgdx
Pregunta: Estoy haciendo un programilla de prueba que se compone de : 4 botones , arriba, abajo, izquierda y derecha. Una nave espacial, formada por un ...
Botones con android y LibGDX – android libgdx
Pregunta: Buenas, he creado un pequeño boton en android, con libGDX muy sencillo, pero el problema es el siguiente: Le tengo asignada una funcion que escribe ...
¿Location manager Android? Experiencias – android mysql android-studio
Pregunta: He desarrollado una aplicación Gps que envía información a Mysql cada 10 seg atraves de locationmanager. ¿Según su experiencia hasta cuanto es posible disminuir ...
Crear cuenta regresiva N segundos mientras se visualiza una Activity en Android – java android
Pregunta: Quiero implementar una cuenta regresiva de N segundos, que se inicie cuando la Activity se muestre, se pare el contador cuando el usuario decide ...
Tags:

Add a Comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *