Aktivitäten werden im Hintergrund ausgeführt

8

Ich bin neu in Android, ich bin nicht sehr bewusst über Dienste.Ich habe eine Aktivitätsklasse mit einer Benutzeroberfläche, ich möchte diese Aktivitätsklasse im Hintergrund ausgeführt wird, wenn ich auf die Zurück-Schaltfläche klicke. Wie man meine Tätigkeit im Hintergrund wie einen Service laufen lässt, bitte hilf mir ..

    
Jesbin MJ 25.03.2013, 17:12
quelle

4 Antworten

3

Wenn Sie möchten, dass Ihre Aktivität einfach ausgeführt wird, versuchen Sie es mit

%Vor%     
user2208695 25.03.2013, 18:43
quelle
4

Sie können nicht wirklich eine Activity im Hintergrund ausführen! Wenn eine Aktivität nicht im Vordergrund ist, wird sie zu onStop und dann kann das System sie beenden, um Ressourcen freizugeben, nach onDestroy method! siehe Aktivitätslebenszyklus

Um im Hintergrund zu arbeiten, müssen Sie ein Service oder IntentService

erstellen

Checkout android javadoc über Services hier und hier oder IntentService

und hier ist ein Tutorial für Android-Dienste

von Drittanbietern

Bearbeiten : Möglicherweise benötigen Sie auch eine Kommunikation zwischen Ihrem Service und Ihrer Aktivität, damit Sie das schaffen: Beispiel: Kommunikation zwischen Aktivität und Service über Messaging

    
madlymad 25.03.2013 17:21
quelle
0

Sie sollten den Entwicklerleitfaden zu Threads lesen: Ссылка

Speziell die Funktion doInBackground () Beispiel von Seite:

%Vor%     
RyPope 25.03.2013 17:14
quelle
0

Es scheint so, als ob Sie eine Aktivität im Hintergrund ausführen möchten, wenn sie beendet wird. Die Aktivität kann jedoch nur ausgeführt werden, wenn sie im Vordergrund ist.

Um zu erreichen, was Sie wollen, sollten Sie in onPause () einen Dienst starten, um die Arbeit in Aktivität fortzusetzen. onPause () wird aufgerufen, wenn Sie auf die Zurück-Schaltfläche klicken. Speichern Sie in onPause den aktuellen Status und übertragen Sie den Job in einen Service. Der Dienst wird im Hintergrund ausgeführt, wenn Ihre Aktivität nicht im Vordergrund ist.

Wenn Sie später zu Ihrer Aktivität zurückkehren, führen Sie etwas in onResume () aus, um den Job des Dienstes erneut an Ihre Aktivität zu übertragen.

    
Xuan Wu 25.03.2013 17:27
quelle