Bedo's Blog

Uno sguardo alla tecnologia di oggi, perche sia veramente d'aiuto nella vita di tutti i giorni

Far partire un servizio al boot su Android

Oggi vedremo come far partire un servizio al boot di Android. Questo è utile se i nostri servizi devono rimanere sempre attivi, per catturare possibili azioni compiute sul telefono.

I passi da seguire sono:

  • Dichiariamo, nell’AndroidManifest.xml, che vogliamo avere una classe che rimanga in ascolto per l’intent BOOT_COMPLETED:
1
2
3
4
5
6
<receiver android:name="BootBroadcastReceiver"
    android:enabled="true" android:exported="false" android:label="BootBroadcastReceiver">
    <intent-filter>
      <action android:name="android.intent.action.BOOT_COMPLETED" />
    </intent-filter>
</receiver>
  • Scriviamo la classe:
1
2
3
4
5
6
7
8
public class BootBroadcastReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
      ComponentName comp = 
        new ComponentName(context.getPackageName(), MyService.class.getName());
      context.startService(new Intent().setComponent(comp));		
    }
}

Forse ti potrebbe anche interessare:

  1. Android non solo sui cellulari

Sat, March 20 2010 » android

Leave a Reply