Display Ausschalten verhindern

Q

qwert_zuiopue

Fortgeschrittenes Mitglied
6
Hallo,
ich möchte, dass das Display an bleibt, wenn meine App aktiv ist (so wie bei google-maps z.B.). Kann ich in meinem Programm so etwas realisieren?

Gruß,
Qwert
 
Ja
 
  • Danke
Reaktionen: qwert_zuiopue
Er hat nicht gefragt wie..
Vergess den Livecycle nicht! Sonst ist dein Akku gleich leer :D
 
IceClaw schrieb:

Super...! :winki:


Was Du benötigst ist ein sogenanntes WakeLock, welches Du über den PowerManager bekommen kannst. Ist im Grunde nichts wirklich Kompliziertes, daher verweise ich Dich einfach mal auf die offizielle Referenz zum PowerManager. Dort steht eigentlich schon alles Wesentliche. Wenn Du irgendwo konkrete Schwierigkeiten hast, sag Bescheid. :)

Der ursprüngliche Beitrag von 11:00 Uhr wurde um 11:01 Uhr ergänzt:

Mist, war ich wohl zu langsam... ^^
 
  • Danke
Reaktionen: qwert_zuiopue
Deshalb auch kein Danke? ;)
 
Ich habe es jetzt so gelöst:

Code:
PowerManager pm;
WakeLock wl;

@Override
public void onCreate(Bundle savedInstanceState) {

...

     PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
     PowerManager.WakeLock wl =  pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "My Tag");
}
@Override
public void onResume() {
     wl.acquire();
}
@Override
public void onPause() {
     wl.release();
}
Ist das in Ordnung? Wofür ist der String "My Tag" gedacht?
 
das fliegt dir um die ohren
 
Code:
PowerManager pm;
WakeLock wl;

@Override
public void onCreate(Bundle savedInstanceState) {

...

     pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
      wl =  pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "My Tag");
}
@Override
public void onResume() {
     super.onResume();
     wl.acquire();
}
@Override
public void onPause() {
     super.onPause();
     wl.release();
}

So funktioniert es :)
 
qwert_zuiopue schrieb:
Wofür ist der String "My Tag" gedacht?

Du warst doch bereits auf der Seite, wo alles zu dem Thema stand. Hättest Dir nur die Mühe machen müssen, noch etwas weiter nach unten zu scrollen.

Your class name (or other tag) for debugging purposes.

Auf Deutsch: Kannste reinschreiben, was Dich glücklich macht. Verwendest Du mehrere WLs, kannste die WL-Objekte damit unterscheiden...
 
Hättest Dir nur die Mühe machen müssen, noch etwas weiter nach unten zu scrollen.

Hab ich gemacht :).
Ich habe mich nur gewundert, weil ich das bei bisher keinem Objekt so gesehen habe.
 
qwert_zuiopue schrieb:
Code:
PowerManager pm;
WakeLock wl;

@Override
public void onCreate(Bundle savedInstanceState) {

...

     pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
      wl =  pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "My Tag");
}
@Override
public void onResume() {
     super.onResume();
     wl.acquire();
}
@Override
public void onPause() {
     super.onPause();
     wl.release();
}
So funktioniert es :)

ich habe mich für meine app an diesen code gehalten und das the-engine.at — Bildschirm Abdunkeln in Android App verhindern
als quelle heran gezogen. trotzdem dunkelt sich bei meinem Gerät das Display ab.

PowerManager.FULL_WAKE_LOCK wird mir auch als deprecated angezeigt.
hat sich diesbezüglich etwas geändert?
 
WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON ist dazu geeignet wie man es der Doku entnehmen kann
 
  • Danke
Reaktionen: dionysos

Ähnliche Themen

wernho
Antworten
11
Aufrufe
681
wernho
wernho
Gemini-Media
Antworten
1
Aufrufe
1.820
swa00
swa00
S
Antworten
5
Aufrufe
1.679
jogimuc
J
Zurück
Oben Unten