Activity wieder in den Vordergrund bringen?

E

Extremefall

Ambitioniertes Mitglied
3
Hallo,
ich habe eine Activity gestartet. Nun drücke ich auf dem Galaxy S2 den Home Button, wodurch die App minimiert wird, also noch im Hintergrund läuft. Die App läuft aber noch zu 100%. Nun möchte ich die App mit der GUI wieder in den Vordergrund bringen. Meine Versuche waren schon folgende:
Code:
Intent intent = new Intent(getApplicationContext(), StartActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
oder
Code:
Intent intent = new Intent(getApplicationContext(), StartActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
Leider wird bei dem Aufruf die GUI nicht wieder in den Vordergrund gebracht. Wisst ihr, wie ich das Problem lösen kann und die App mit der GUI wieder in den Vordergrund bekomme? Der oben genannte Code wird übrigens direkt aus der Klasse, die in den Vordergrund kommen soll, aufgerufen. Also aus der Klasse StartActivity.
 
Ich glaube dein Vorhaben ist nicht so leicht möglich. Das was du beschreibst, klingt aber so als würdest du Code haben, der im Hintergrund läuft. Da bietet sich ein Service an. Der Nutzer sollte nach Google Vorgaben dann über eine Notification informiert werden. Das würde ich dir auch empfehlen.

Es würde den Nutzer auch nur verwirren, wenn aus dem Nichts deine App wieder aufgeht. Das macht kein Sinn.
 
Da bietet sich ein Service an. Der Nutzer sollte nach Google Vorgaben dann über eine Notification informiert werden. Das würde ich dir auch empfehlen.
Es ist wirklich so, dass der Code im Hintergrund ausgeführt wird. Nun habe ich es als Activity gestartet. Sollte man es lieber als Service machen? Was ist denn der Unterschied? Ich würde gerne die Activity ohne Notification starten.

Die Activity ist sowieso durchsichtig und wird dann nach x Sekunden wieder geschlossen. Deswegen wird der Nutzer nicht verwirrt sein. Ist also mein Vorhaben dennoch möglich? Wenn ja, wie? Kann es schon klappen, wenn ich den Intent aus dem Service heraus aufrufe? Wie müsste den der Intent lauten, damit eine neue Activity im Vordergrund gestartet wird?
 
eine durchsichtige activity vergiss am besten gleich wieder

services sind dafür gedacht.

der nutzer ist sicher verwirrt, wenn apps in seinem app manager auftauchen, die er noch nicht gesehen ( da ja durchsichtig)
 
Ich empfehle dir den Service und die Notification. Da ich aber nicht genau weiß, was du vorhast, kann ich es schwer einschätzen. Du würdest dann aber Android konform arbeiten.

Warum eine durchsichtige Activity? Was soll die bringen?
 
Wie kann ich den Service denn am besten bewerkstelligen? Gibt es noch eine Möglichkeit, diesen ohne Activity zu starten? Eine Frage noch: Ich habe beim Start der Activity eine Eingabemaske (AlertDialog). Kann man so etwas denn auch bei einem Service nutzen? Und wenn ja, was ist da der Context? Bei der Activity nutze ich immer getApplicationContext().
 
Bitte schau dir mal die Basics zu Android an. Da wird auch genau erklärt, wie man einen Service nutzt Services | Android Developers

Und wenn ich das schon mit getApplicationContext() lese... Das tut weh ^^ (Geheimtipp: eine Activity erbt von Context).
 
rufst du den Code in onStop() auf?
 

Ähnliche Themen

D
Antworten
23
Aufrufe
2.561
Data2006
D
softwaretk
Antworten
11
Aufrufe
1.642
softwaretk
softwaretk
M
  • maksimilian
Antworten
15
Aufrufe
1.704
maksimilian
M
Zurück
Oben Unten