Iniciar el servicio en el arranque, pero no toda la aplicación de Android
Estoy trabajando con Android.
Tengo una aplicación en la que estoy trabajando, utiliza una actividad para configurar valores de entrada de usuario específicos que luego utilizan un servicio para proporcionar alertas basadas en esos valores. Haciendo la investigación determiné cómo podría conseguir que la aplicación comenzara cuando el teléfono arranca, sin embargo, lo que realmente quiero es tener el inicio del servicio pero no tener la carga de la aplicación en la pantalla. Actualmente, la aplicación completa se carga en la pantalla cuando enciendo el dispositivo y luego tengo que salir de él.
- Cómo enlazar una actividad a un servicio y controlar y administrar el servicio desde la actividad
- Servicio con cola de prioridad en Android
- Eventos de apagado en Android
- ¿Cuál es la forma correcta de detener un servicio que se está ejecutando como primer plano
- Android: mantener el servicio en ejecución cuando se mata la aplicación
He descargado programas similares que tienen interfaces para la configuración, pero de lo contrario se ejecutan en el fondo. ¿Cómo se hace eso?
- ¿Por qué NullPointerException ocurre con el uso de BillingService estándar?
- Google Cloud Messaging - GCM - SERVICE_NOT_AVAILABLE
- Cómo pasar valor de cadena de servicio a la actividad en android?
- Cómo utilizar NotificationCompat.Builder y startForeground?
- ¿Cómo obtener una lista de servicios en ejecución en Android?
- Obtener: No se permite iniciar el servicio Intención ... sin permiso Proceso de servicio es malo
- Envío de una notificación desde un servicio en Android
- En servicio de facturación de aplicaciones que se mueren a veces
Primero tienes que crear un receptor:
public class BootCompletedReceiver extends BroadcastReceiver { final static String TAG = "BootCompletedReceiver"; @Override public void onReceive(Context context, Intent arg1) { Log.w(TAG, "starting service..."); context.startService(new Intent(context, YourService.class)); } }
A continuación, añada permiso a su AndroidManifest.xml:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
Y el receptor de la intención del registro:
<receiver android:name=".BootCompletedReceiver" > <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED" /> </intent-filter> </receiver>
Una vez hecho esto, su aplicación (clase de Application
) se ejecutará junto con los servicios, pero no las actividades.
Ah, y no ponga su aplicación en la tarjeta SD (APP2SD o algo así), porque tiene que residir en la memoria principal para estar disponible justo después de que el arranque se ha completado.