[ACCEPTED]-Android: start service with parameter-android-activity

Accepted answer
Score: 32
Intent serviceIntent = new Intent(this,ListenLocationService.class); 
serviceIntent.putExtra("From", "Main");
startService(serviceIntent);
//and get the parameter in onStart method of your service class

@Override
public void onStart(Intent intent, int startId) {
    super.onStart(intent, startId);
    Bundle extras = intent.getExtras();

    if(extras == null) {
        Log.d("Service","null");
    } else {
        Log.d("Service","not null");
        String from = (String) extras.get("From");
        if(from.equalsIgnoreCase("Main"))
            StartListenLocation();
    }
}

0

Score: 15

Step #1: Delete your BroadcastReceiver implementation.

Step 2 #2: Examine the Intent your service gets in onStartCommand() and 1 look at the action via getAction().

More Related questions