eigenen Service beenden

C

cHi-ses-

Neues Mitglied
0
Huhu
wiedermal ein (hoffentlich) kurzes Problem. Ich starte meinen eigenen Service erfolgreich und will diesen dann beenden, dass funktioniert aber leider nicht :bored:
Code:
public class SensorServiceActivity extends Activity {    
    Intent sensorService;
    public void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);
        sensorService = new Intent(getApplicationContext(), SensorService.class);
        setContentView(R.layout.main);
    }
    
    public void onResume() {
        super.onResume();
        Button button1 = (Button) findViewById(R.id.button1); 
        button1.setOnClickListener(new OnClickListener() {
            public void onClick(View v) {
                Log.d("DEBUGSERVICE", "Start Button pressed");
                startService(new Intent(getApplicationContext(), SensorService.class));
            }
        });
        Button button2 = (Button) findViewById(R.id.button2); 
        button2.setOnClickListener(new OnClickListener() {
            public void onClick(View v) {
                Log.d("DEBUGSERVICE", "Stop Button pressed");
                stopService(new Intent(getApplicationContext(), SensorService.class));
            }
        });
    }
Service
Code:
public void onCreate(Bundle savedInstanceState) {          
        Toast.makeText(getApplicationContext(), "My Service started! onCreate", Toast.LENGTH_SHORT).show();       
    }
    
    /*
     * (non-Javadoc)
     * @see android.app.Service#onStart(android.content.Intent, int)
     */
    public void onStart(Intent intent, int startid) {
        Toast.makeText(this, "My Service Started! onStart", Toast.LENGTH_LONG).show();
    }
 
    public void onDestroy(Intent intent, int startid) {
        Toast.makeText(this, "My Service Stoped! onDestroy", Toast.LENGTH_LONG).show();
    }

Das starten funktioniert, ohne Probleme, die Methode onStart wird aufgerufen. Leider funktioniert das beenden des Services einfach nicht! es wird, wenn ich auf den 2. Button drücke, einfach nicht die onDestroy aufgerufen. Wieso?
Ist
Code:
stopService(new Intent(getApplicationContext(), SensorService.class));
nicht richtig?

Vielen Dank schonmal!!
 
Hab noch nicht soviel mit Services gearbeitet, aber versuchs mal so:
Code:
Intent i=new Intent(new Intent(getApplicationContext(), SensorService.class));
startService(i);
//Programm
stopService(i);
Gruß
-Lightning2010
 
Dein onDestroy() enthält Parameter, damit hast du eine neue Funktion implementiert statt eine vorhandene zu überlagern.
 
  • Danke
Reaktionen: cHi-ses-
Lightning2010 schrieb:
Hab noch nicht soviel mit Services gearbeitet, aber versuchs mal so:
Code:
Intent i=new Intent(new Intent(getApplicationContext(), SensorService.class));
startService(i);
//Programm
stopService(i);
Gruß
-Lightning2010
hatte ich schon, dachte ich nämlich auch dran. -> war es nicht

@strider, das war es. ich idiot. vielen dank!
 

Ähnliche Themen

FabianDev
Antworten
5
Aufrufe
548
swa00
swa00
R
  • RudolfHagen
Antworten
1
Aufrufe
648
koje71
koje71
R
Antworten
3
Aufrufe
1.614
Ritartet
R
Zurück
Oben Unten