Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why is this simple service not starting?

I have a service with a handler that has to write "Hello" in the logcat every 5 seconds. But it doesn't write nothing on the logcat... It's like the service is not executing, and I put a breakpoint on it and the debug mode never stops on the breakpoint.

I start the service, in the first activity of my app, with this:

startService(new Intent(GPSLoc.this, MyServiceNotifications.class)); //enciendo el service 

I am sure that the code startService is executed because it is called before starting another activity, and the other activity starts.

This is the code of my service:

public class MyServiceNotifications extends Service {      boolean serviceStopped;      private Handler mHandler;     private Runnable updateRunnable = new Runnable() {         @Override         public void run() {             if (serviceStopped == false)             {                 createNotificationIcon();             }             queueRunnable();         }     };      private void queueRunnable() {         // 600000 : cada 10 minutos, comprueba si hay nuevas notificaciones y actualiza la         // notification BAR         mHandler.postDelayed(updateRunnable, 5000);      }      @Override     public IBinder onBind(Intent intent) {         return null;     }      @Override     public void onCreate() {         serviceStopped = false;          // //////////////////////////////////////MANEJADOR SIMILAR A UN HILO         mHandler = new Handler();         queueRunnable();         // ///////////////////////////////////// FIN MANEJADOR     }      @Override     public void onDestroy() {         serviceStopped = true;     }      @Override     public void onStart(Intent intent, int startid) {      }      public void createNotificationIcon()     {         Log.d("MyServiceNotifications", "Hello");     }     } 
like image 619
NullPointerException Avatar asked Jan 21 '11 14:01

NullPointerException


Video Answer


2 Answers

Did you declare the service in AndroidManifest.xml?

like image 113
Franco Avatar answered Oct 11 '22 10:10

Franco


Very important: write the name space correctly, for example:

<service android:name="com.example.data.synchronization.SynchronizationService"/> 

in my AndroidManifest.xml previously it was (wrong):

<service android:name="com.example.data.SynchronizationService"/> 

No service started and no error message!

like image 25
Seraphim's Avatar answered Oct 11 '22 10:10

Seraphim's