Skip to content
Damien edited this page May 19, 2013 · 13 revisions

Since AndroidAnnotations 2.4

You can enhance an Android Service with the @EService annotation:

@EService
public class MyService extends Service {

}

You can then start using most AA annotations, except the ones related to views and extras:

@EService
public class MyService extends IntentService {

  @SystemService
  NotificationManager notificationManager;

  @Bean
  MyEnhancedDatastore datastore;

  @RestService
  MyRestClient myRestClient;

  public MyService() {
      super(MyService.class.getSimpleName());
  }

  @Override
  protected void onHandleIntent(Intent intent) {
    // Do some stuff...

    showToast();
  }

  @UiThread
  void showToast() {
    Toast.makeText(getApplicationContext(), "Hello World!", Toast.LENGTH_LONG).show();
  }
}

You can start an enhances activity via the inner Builder :

MyService.intent(getApplication()).start();

Since AndroidAnnotations 3.0

When the 3.0 will be released you'll be able to stop a service with the Builder. This page will be updated at this moment

Using AndroidAnnotations

Questions?

Enjoying AndroidAnnotations

Improving AndroidAnnotations

Clone this wiki locally