Ejecutar servicio incluso si la aplicación está cerrada (matado)

Quiero que este servicio se ejecute incluso si la aplicación está cerrada (kiiled) o incluso si el usuario no iniciar la aplicación. Quiero que el servicio se inicie después de instalar la aplicación y desde este punto, el servicio debe ejecutarse siempre.

public class notifications extends Service { @Override public IBinder onBind(Intent intent) { // TODO Auto-generated method stub return null; } @Override public void onCreate() { } @Override public void onStart(Intent intent, int startId) { final Handler handler = new Handler(); final Runnable runb = new Runnable() { public void run() { Toast.makeText(getApplicationContext(), " Service Started", Toast.LENGTH_LONG).show(); handler.postDelayed(this, 10000); } }; handler.postDelayed(runb, 0); } @Override public void onDestroy() { } }*/ public class notifications extends IntentService { private Timer mBackGroundTimer; public notifications() { super("myservice"); this.mBackGroundTimer=new Timer(); } @Override protected void onHandleIntent(Intent intent) { // TODO Auto-generated method stub mBackGroundTimer.schedule(new TimerTask() { public void run() { try { Notification("This is message from Dipak Keshariya (Android Application Developer)", "This is Android Notification Message"); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } },1000, 2000); } // END onHandleIntent() private void mStopTimer() { //Call this whenever you need to stop the service mBackGroundTimer.cancel(); } private void Notification(String notificationTitle, String notificationMessage) { NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); android.app.Notification notification = new android.app.Notification(R.drawable.ic_launcher, "A New Message from Dipak Keshariya (Android Developer)!", System.currentTimeMillis()); Intent notificationIntent = new Intent(this, MainActivity.class); PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0); notification.setLatestEventInfo(getApplicationContext(), notificationTitle, notificationMessage, pendingIntent); notificationManager.notify(10001, notification); } } 

¿como puedo hacer eso?

En cuanto a su código, parece que desea que su servicio periódicamente dar notificaciones.

En cuanto a que se ejecute de forma continua va, tenga en cuenta que por diseño, el sistema Android puede terminar su proceso de servicio en cualquier momento. Usted puede influir en esto un poco, pero no puede evitar que el sistema de matar a su servicio.

Así que para sus acciones periódicas, sería mejor usar AlarmManager con una alarma recurrente. Su servicio sería entonces básicamente one-shot, es decir, realizar la acción una vez y luego salir.

Para algunos códigos, mire aquí por ejemplo:

Android: Administrador de alarmas

Debe implementar el método OnStartCommand de la clase Service y en él, devolver Service.START_STICKY. Eso hará el truco. Si cancela la aplicación, el servicio continuará ejecutándose en segundo plano. Sin embargo, si reinicias tu teléfono, creo que necesitas implementar algo más en tu aplicación, también, un servicio de arranque o algo así.

Como usted requisito es funcionar el servicio en el fondo. Usted está en el camino correcto para utilizar el servicio, ya que esto se entiende para el fondo que se ejecuta el propósito solamente.

De la actividad usted puede comenzar el servicio por

 startService(new Intent(activityName.this, serviceName.class)); 

O si su aplicación no está teniendo ninguna actividad entonces usted puede hacer el servicio como defecto y lanzador principal de la aplicación poniendo

 <service android:name="name of the service" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </service> 

Creo que la respuesta a esta pregunta es la siguiente: https://developer.android.com/training/sync-adapters/creating-sync-adapter.html

Adaptadores de sincronización introducidos en Google I / O 2013.

  • Diseño de hilos múltiples de Android Service
  • Envío de una notificación desde un servicio en Android
  • Cómo mostrar un cuadro de diálogo de un servicio
  • Icono de servicio persistente en la barra de notificaciones
  • Cómo detectar la visibilidad del selector de método de entrada sin el permiso de accesibilidad
  • Android: Cómo detener el servicio de música de mi aplicación, si otra aplicación reproduce música.
  • Android Service.startForeground NO respeta la id unicidad de notificación
  • ¿Cómo actualizar un TextView en una actividad de un servicio en Android?
  • Actualización de Textview en una actividad con servicio local
  • Recolector de datos de sensor de fondo en Android
  • Depuración de fallos de servicio
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.