Bildschirm dunkel und wieder hell machen

  • 15 Antworten
  • Letztes Antwortdatum
Z

zeras

Neues Mitglied
0
Hallo,

ich möchte mit einer App den Bildschirm abschalten und nach einiger Zeit wieder zuschalten. Derzeit habe ich Android 4.4.4.

Unter
Starting Activity from Sleeping Device | Michael Irwin - Web Developer
habe ich ein Beispiel gefunden, was aber bei mir nicht funktioniert. Der Bildschirm wird dunkel aber nie wieder hell.
Ich programmiere zwar mit Delphi, aber ein Java Beispiel würde mir auch reichen.
Wie komme ich weiter?
 
mmmmmh mal ein Umweg:

Einfach eine Bitmap über den Screen legen (Schawrz oder welche Farbe du möchtest) und dann den Alpha kanal des Bitmaps beeinflussen, dadurch geht es dann von durchsichtig zu undurchsichtig und umgekehrt
 
Danke für die Info.

Ich habe es schon hinbekommen, dass ich die Helligkeit vom Programm aus steuern kann, aber wenn ich Helligkeit 0 habe, ist das Display trotzdem noch relativ hell.

Wenn sich nichts anderes findet, werde ich mal deine Infos umzusetzen versuchen.
 
Hi,

Screen anschalten:
WakeLock

Screen ausschalten:
DevicePolicyManager, falls deine App ein DeviceAdmin ist.
Allerdings kommt dann der Lockscreen, statt deine App. Um den zu umgehen musst du noch ein paar mehr Admin Rechte anfordern und ihn dann temporär deaktivieren (das geht, je nach Lockscreen-Art).
 
Danke für die Infos.

deek schrieb:
Hi,

Screen anschalten:
WakeLock
Das habe ich schon implementiert. Wenn ich diese Funktion aufrufe, dann bleibt der Bildschirm immer an.

deek schrieb:
Screen ausschalten:
DevicePolicyManager, falls deine App ein DeviceAdmin ist.
Allerdings kommt dann der Lockscreen, statt deine App. Um den zu umgehen musst du noch ein paar mehr Admin Rechte anfordern und ihn dann temporär deaktivieren (das geht, je nach Lockscreen-Art).

Hier sehe ich Probleme. Ich will ja nur den Bildschirm abdunkeln und nicht noch was mit Admin machen. Wenn es anders geht, wäre das gut. Ansonsten muss ich sehen, ob ich den von dir verlinkten Code umsetzen kann.
 
Irgednwie habe ich die frage so verstanden dass du den bildschirm heller und dunkler amchen willst voll komisch oO

ja deek hat es schon gesagt so ungefähr läufts:
(Quelle: Smitty's Home Of Leaky Abstractions: Locking and unlocking an android device programmatically)


Code:
//Get the window from the context
   2: WindowManager wm = Context.getSystemService(Context.WINDOW_SERVICE);
   3:  
   4: //Unlock
   6: Window window = getWindow();  
   7: window.addFlags(wm.LayoutParams.FLAG_DISMISS_KEYGUARD);  
   8:  
   9: //Lock device
  10: DevicePolicyManager mDPM;
  11: mDPM = (DevicePolicyManager)getSystemService(Context.DEVICE_POLICY_SERVICE);
 
Jaiel schrieb:
Irgendwie habe ich die frage so verstanden dass du den bildschirm heller und dunkler machen willst voll komisch oO

Das Tablet soll mehr oder weniger immer Laufen und das Display über Nacht abgeschaltet werden, da es zu dieser Zeit nicht benötigt wird. Wenn man dann das Display komplett dunkelschalten kann, spart man auch noch Strom.
Ich dimme derzeit, aber auch bei Helligkeit = 0 ist es immer noch relativ hell.
 
achso ok
ja dann wird die lösung dann wohl genau dazu passen die ich bzw deek geschriben haben

Der ursprüngliche Beitrag von 16:41 Uhr wurde um 16:43 Uhr ergänzt:

hast du vor services zu benutzen?
 
Ah OK. Aber dann ist doch relativ einfach. In den Einstellungen den Bildschirm timeout auf eine minute oder so stellen und deine App aquired morgens das wakelock und released es abends wieder. Dann geht der Bildschirm nach der eingestellten Zeit aus.
 
  • Danke
Reaktionen: zeras
deek schrieb:
App aquired morgens das wakelock
und released es abends wieder

Das versuche ich schon seit einiger Zeit, aber es gelingt mir nicht, den Bildschirm wieder einzuschalten. Ich habe auch schon verschiedene Flags versucht (SCREEN_BRIGHT_WAKE_LOCK, FULL_WAKE_LOCK, etc), aber bis jetzt noch keine Möglichkeit gefunden, dass der Bildschirm wieder "anspringt". Auch verschiedene Kombis der Flags habe ich probiert, wobei ich bestimmt noch nicht alle Konstellationen hatte. In den Beschreibungen stand auch drin, dass einige schon wieder depricated sind und man "FLAG_KEEP_SCREEN_ON" nehmen sollte. Damit hatte ich auch schon probiert.
Der Prozessor muss aber arbeiten, da ich noch eine Sprachausgabe mache. Diese wird aber angesagt.

Jaiel schrieb:

hast du vor services zu benutzen?

Das wollte ich vermeiden, da ich alles noch ins Delphi übersetzen muss.
 
ich glaube dein vorhaben ist unmöglich ohne services
 
Gibt es das Beispiele?
 
Zuletzt bearbeitet von einem Moderator:
Danke, aber wenn ich das so lese, dann müssen dann auch Kommandos gestartet werden, um den Bildschirm wieder aufzuwecken. Das könnte ich ja auch innerhalb der APP machen. Laufen tut sie ja, da ich auch bei dunklem Bildschirm noch Sprachausgaben aus meinen Programm bekomme.
Mir fehlt da noch der Ansatz.
 
Zuletzt bearbeitet von einem Moderator:
Ich werde die nächsten Tage weitermachen und wieder Bescheid geben.
 
Zuletzt bearbeitet von einem Moderator:
Zurück
Oben Unten