2017-02-09 14 views
0

Ich habe einen Alarm Broadcast-Empfänger, wo ich überprüfen möchte, ob meine App vollständig geschlossen ist, was bedeutet, dass App weder im Vordergrund noch im Hintergrund ausgeführt wird.Android: Überprüfen, ob App geschlossen ist

Kann mir jemand sagen, wie kann ich das überprüfen?

+0

http://stackoverflow.com/questions/5593115/run-code-wenn-android-app-is-closed-sent-to-background Dies sollte alle Antworten enthalten, die Sie benötigen – Nico

Antwort

-1

in Ihrer Anwendungsklasse:

public class MyApplication extends Application {  
    @Override 
    public void onTerminate() { 
     super.onTerminate(); 
     // your app is closed 
    } 
} 
0

Sie können eine service erstellen und überschreiben die onTaskRemoved() Methode

Vom Documentation

der Benutzer eine Aufgabe bedeutet klauen die App aus entfernt von der Aufgabe Liste. Wenn Sie den Dienst über die Telefoneinstellungen anhalten, wird Service.onTaskRemoved() nicht ausgelöst.

Code:

public class AppStopped extends Service { 

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

    @Override 
    public int onStartCommand(Intent intent, int flags, int startId) { 
     Log.d("Service", "Service Started"); 
     return START_NOT_STICKY; 
    } 

    @Override 
    public void onDestroy() { 
     super.onDestroy(); 
     Log.d("Service", "Service Destroyed"); 
    } 

    @Override 
    public void onTaskRemoved(Intent rootIntent) { 
     Log.e("Service", "END"); 
     Toast.makeText(getApplicationContext(), "App Stopped", Toast.LENGTH_SHORT).show(); 
     //Code here 
     stopSelf(); 
    } 
} 

In Manifest:

<service android:name="com.example.AppStopped" 
    android:stopWithTask="false" /> 

Starten Sie den Dienst in Ihrer Tätigkeit wie:

startService(new Intent(getBaseContext(), AppStopped.class)); 
+0

Funktioniert das auch, wenn die App vom Betriebssystem beendet wird? –

+0

versuchen Sie den Code wird es funktionieren ... – rafsanahmad007

+0

Ich habe dies versucht, aber OnTaskRemoved wird nicht aufgerufen, wenn App von OS. –

Verwandte Themen