Führen Sie beim Starten der Anwendung nur einen Hintergrunddienst aus

Ich möchte nur einen Dienst starten, wenn meine Anwendung gestartet wird. Hier ist mein Code:

Meine Serviceklasse:

public class MyService extends Service {
 @Override
  public int onStartCommand(Intent intent, int flags, int startId) {

     Log.i("LocalService", "Received start id " + startId + ": " + intent);

   // We want this service to continue running until it is explicitly
   // stopped, so return sticky.
   return START_STICKY;
  }

@Override
public IBinder onBind(Intent intent) {
    // TODO Auto-generated method stub
    return null;
}
}

Meine BroadcastReceiver-Klasse:

public class MyServiceReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
    Intent service = new Intent(context, MyService.class);
    context.startService(service);
}
}

Und meine AndroidManifest-Datei:

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="17" />

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >

    <service
      android:name=".MyService"
      android:label="@string/app_name"
      android:enabled="true"
      android:process=":my_process" >
    </service>

    <receiver 
        android:name=".MyServiceReceiver"
        android:enabled="true" >

        <intent-filter>
            <action android:name="android.intent.action.MAIN"/>
            <action android:name="android.intent.action.BOOT_COMPLETED"/>
            <category android:name="android.intent.category.HOME"/>
        </intent-filter>
    </receiver>

</application>

Ich möchte meinen Dienst beim Start der Anwendung (bei der ersten Installation) und beim Booten des Geräts starten.

P.S. Wenn der Code stimmt, muss ich möglicherweise eine bestimmte Konfiguration für die Eclipse-Schaltfläche "Ausführen" einrichten. Wenn ich versuche, eine neue Konfiguration zu erstellen, kann ich unter "Aktion starten" nichts auswählen, da meine Anwendung keine Aktivität aufweist und ich "Nichts tun" auswählen muss.

Vielen Dank

Antworten auf die Frage(1)

Ihre Antwort auf die Frage