“Impossible de démarrer le service dans l'Intention de” erreur lors du démarrage de service d'une Activité dans Android

Je vois l'erreur suivante dans DDMS lorsque vous essayez d'utiliser une Case à cocher sur mon MyActivity" activité à démarrer un service appelé "MyService":

W/ActivityManager(   73): Unable to start service Intent { cmp=com.example.android.myprogram/.MyService }: not found

J'ai utilisé le tutoriel http://developer.android.com/resources/tutorials/views/hello-formstuff.html et ajouté le code fourni à la fin de mon onCreate() de la méthode. J'ai l'classes indiquées séparément dans MyActivity.java et MyService.java.

package com.example.android.myprogram;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.CheckBox;


public class MyActivity extends Activity {
    private static final String TAG = "MyActivity";

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        final CheckBox checkbox = (CheckBox) findViewById(R.id.checkbox);
        checkbox.setOnClickListener(new OnClickListener() {
            public void onClick(View v) {
                //Perform action on clicks, depending on whether it's now checked
                if (((CheckBox) v).isChecked()) {
                    //TODO: Add code to START the service
                    Log.d(TAG, "startService from checkbox");     
                    startService(new Intent(MyActivity.this, MyService.class));
                } else {
                    //TODO: Add code to STOP the service
                    Log.d(TAG, "stopService from checkbox");     
                    stopService(new Intent(MyActivity.this, MyService.class));
                }
            }
        });
    }
}

Mon fichier de manifeste de n'avoir celui-ci, où j'ai aussi essayé de l'espace de nom complet, le nom court, à l'aide d'une intention-filtrer par une autre recherche, etc. Je ne dis pas qu'est ce qu'il est correct. J'ai juste laissé à un point d'arrêt.

<service android:name=".MyService">
   <intent-filter><action android:name="com.example.android.myprogram.MyService"></action>
   </intent-filter>
</service>

Et enfin, mon service que j'ai décidé de briser à son strict minimum:

package com.example.android.myprogram;


import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.util.Log;

public class MyService extends Service {
    private static final String TAG = "MyService";

    @Override
    public IBinder onBind(Intent intent) {
        return null;
    }

    @Override
    public void onCreate() {
        Log.d(TAG, "onCreate");
        //code to execute when the service is first created
    }

    @Override
    public void onDestroy() {
        Log.d(TAG, "onDestroy");
        //code to execute when the service is shutting down
    }

    @Override
    public void onStart(Intent intent, int startid) {
        Log.d(TAG, "onStart");
        //code to execute when the service is starting up
    }
}

Je suis très, très, très nouveau pour Java/Android programmation et la programmation en général (mais l'apprentissage), donc je suis sûr que c'est une erreur d'utilisateur et probablement de bon sens pour tout le monde. Toutes les suggestions sont les grands.

Pourriez-vous collez le Service de code?
Cristian, merci pour la réponse. Le Code a été ajouté. Question: dois-je être en mesure de l'utiliser et obtenir un bon résultat? android.kgmoney.net/2010/05/08/.... Il ne fonctionne pas non plus.

OriginalL'auteur capitalf | 2010-12-31