[android-developers] bindService() does not create local service, but returns true
I want to use a local service to fence off some logic in a singleton
class. From my Activities I try to bind to it. The method
bindService() returns true, but the Service onCreate() is never
called, nor is the ServiceConnector's onServiceConnected().
Please tell me what part I am missing.
Here is my manifest snippet (note that I do not set :remote, as I want
the service to be local):
<service android:enabled="true"
android:name=".service.ConsumptionService"/>
This is how I call the ServiceConnector and the Service:
Intent serviceIntent = new Intent(this, ConsumptionService.class);
ConsumptionServiceConnection serviceConnection = new
ConsumptionServiceConnection();
boolean isBound = bindService(serviceIntent, serviceConnection,
Context.BIND_AUTO_CREATE);
Especially the "BIND_AUTO_CREATE" part should to the creation,
according to the documentation.
This is the Service itself:
@Override
public void onCreate() {
super.onCreate();
measurementDao = new MeasurementDaoImpl(this);
calculator = new TrendCalculatorImpl(measurementDao);
}
@Override
public IBinder onBind(Intent intent) {
return binder;
}
public class LocalBinder extends Binder {
ConsumptionService getService() {
return ConsumptionService.this;
}
}
private final IBinder binder = new LocalBinder();
--
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscribe@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
0 Comments:
Post a Comment
Subscribe to Post Comments [Atom]
<< Home