Wie kann ich realisieren das in meiner App der Bildschirm an bleibt?
Mit der kostenlosen PocketPC.ch App von meinem HD7 T9292 aus geschrieben.
Druckbare Version
Wie kann ich realisieren das in meiner App der Bildschirm an bleibt?
Mit der kostenlosen PocketPC.ch App von meinem HD7 T9292 aus geschrieben.
Für das Verhindern der Bildschirmsperre gibt es diesen Weg:
Im Konstruktor fügst du diese Zeile Hinzu:
App.Current.Exit += Current_Exit;
Dann fügst du die Methode Current_Exit ein
void Current_Exit(Object sender, EventArgs e)
{
PhoneApplicationService.Current.UserIdleDetectionMode = IdleDetectionMode.Enabled
}
-Ich habe diesen Code aus dem Entwickeln für Windows Phone 7 Buch. Ich habe es nicht getestet, aber ich nehme an dass es stimmt. (Funktioniert nur auf dem Gerät nicht im Emulator)
Gruss
das ging ja fix, kann man auch herrausbekomnen ob das gerät am Stromnetz hängt ?
Mit der kostenlosen PocketPC.ch App von meinem HD7 T9292 aus geschrieben.
K.A das weiss ich jetzt nicht, aber wieso will man das wissen?
Man will es wissen weil der Bildschirm nur an bleiben soll wenn das phone am netz hängt
Mit der kostenlosen PocketPC.ch App von meinem HD7 T9292 aus geschrieben.
Kleiner Tipp noch, wenn du dies machst:
In den Bestimmungen für die Apps hat Microsoft einen Paragraphen der besagt, dass der User dadrüber informiert werden muss, bzw dem zustimmen muss.
Ich habe dies so geregelt bei mir, dass wenn so eine Situation auftritt, wo der Bildschirm anbleiben soll, beim ersten mal der User eine Abfrage bekommt, ob dies zugelassen werden soll. Dies dann im IsolatedStorage speichern.
So hat der User nur einmal eine Antwort zu geben und Microsoft ist auch zu frieden.
Könnte vielleicht helfen beim übermitteln der App zu Microsoft, damit sie nicht unnötiger weise abgewiesen wird. ;)
wurde schon von MS angenommen...ich gebe aber auch eine kleine warnung auf dem bildschirm aus wenn der bildschirm imme an ist
Dann ist ja gut ;)
Hallo zusammen
Bin ich zu doof dafür? Habs versucht (mit enabled und disabled IdleDetectionMode) - zeigt keine Wirkung. Was mache ich falsch?
Gruss Peter
Code:Public Sub New()
' Während des Debuggens Profilerstellungsinformationen zur Grafikleistung anzeigen.
' Silverlight-Standardinitialisierung
InitializeComponent()
' Phone-spezifische Initialisierung
InitializePhoneApplication()
' Kein Lockscreen während des Spiels
AddHandler App.Current.Exit, AddressOf Current_Exit
End Sub
Code:' Kein Lockscreen während des Spiels
Private Sub Current_Exit(ByVal sender As Object, ByVal e As EventArgs)
PhoneApplicationService.Current.UserIdleDetectionMode = IdleDetectionMode.Disabled
End Sub
Hallo zusammen
Genau - eben auch rausgefunden. Im Prinzip lässt sich so der IdleModus gezielt ein- ausschalten dort wo man ihn braucht.
Ich frage mich jetzt, ob ich wirklich eine Abfrage machen muss, wenn der IdleModus explizit nur während des spielens ausgeschalten wird. Es ist so, dass wenn man im Game einfach nichts macht, man automatisch auf den Game-Over Screen fliegt, wo dann der Idle-Modus wieder eingeschalten wäre.
Was meint Ihr? Riskieren oder diese meiner Meinung nach unnötige Abfrage einbauen?
btw. Das Game wird nur mit Neigen gesteuert - nix mit Fingern - daher das ganze...
Kannst du nicht einfach testen, ob der Bildschirm ausgeschaltet wird, wenn du spielst?
Einen so speziel Fall habe ich bisher noch nicht erlebt, da man normalerweiße in jeder App den Bildschirm mal berührt.
Obwohl, ich habe ein Gegenbeispiel. In Kombo, wird auch nicht mit den Fingern gesteuert und der Bildschirm geht auch nicht aus.
Also, wenn du feststellen solltest, dass trotz Spielens und nichtberühreren des Bildschirms der Bildschirm ausgeht, dann kannst du einfach setzen, dass der Bildschirm nicht ausgehen darf, ohne Abfrage an den User. Dies macht Kombo nämlich auch nicht.
Aber ob du wirklich damit durchkommst, wirst du selbst herausfinden müssen.
Zur not könntest du immer noch einen Disclaimer schreiben, in dem du sagst, dass während das Spiel aktiv ist, der Bildschirm nicht ausgeschaltet wird. Das sollte ausreichen, wenn du den beim aller ersten Start der App anzeigst.
Nun, es ist so, dass das Game einen Haupt-Screen hat (Start, Einstellungen usw.) und einen Game-Screen wo gespielt wird. Und eben, total ohne Hände, nur mit Neigen des Phones. Es ist leider auch so, dass trotz Spielens der Screen nach der eingestellten Zeit lockt.
Macht man aber lange genug nichts auf dem Game-Screen fällt man zurück auf den Haupt-Screen und dieser hätte dann Idle wieder eingeschalten wie es sich gehört. Von dem her ist es lediglich so, dass das Teil mal etwas länger braucht um in den Lock-Screen zu fallen. Vorausgesetzt der Spieler startet und macht dann einfach nichts mehr...
In dem Fall, würde ich dir Raten, den Lockscreen zu deaktivieren, wenn das Spiel gestartet wird, (nicht beim Hauptscreen) und wenn wieder zum Hauptscreen zurückgegangen wird diesen wieder aktivieren.
Zusätzlich beim ersten Start eine kleine Anmerkung, dass der Bildschirm während des Spielens nicht ausgeschaltet wird. Damit kannst du nichts falsch machen.