Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   iOS: Idle-Modus deaktivieren (https://www.delphipraxis.net/206664-ios-idle-modus-deaktivieren.html)

philipp.hofmann 16. Jan 2021 07:47

iOS: Idle-Modus deaktivieren
 
Hi,

bis vor Kurzem war der iOS-Idle-Modus folgendermaßen deaktivier-/aktivierbar:

Delphi-Quellcode:
  UIApp:=TUIApplication.Wrap(TUIApplication.OCClass.SharedApplication);
  UIApp.setIdleTimerDisabled(activate);
Dies funktioniert scheinbar leider nicht mehr (ich habe iOS 14.x). Weißt jemand, wie man es mittlerweile macht?

Grüße, Philipp

Rollo62 16. Jan 2021 10:59

AW: iOS: Idle-Modus deaktivieren
 
Was willst Du denn erreichen, das er im Hintergrund weiterarbeitet, oder so Was wie WakeLock ?
Das kann man z.B. mit BackgroundMode Bluetooth Central erreichen wenn Du mit Bluetooth arbeitest,
Aber generell hat Apple aber bald alle Optionen abgeschaltet.

philipp.hofmann 16. Jan 2021 11:53

AW: iOS: Idle-Modus deaktivieren
 
Ich möchte nicht nur, dass Bluetooth im Hintergrund noch arbeitet, sondern auch das Display aktiv bleibt. Bei mir sitzt der User eventuell vor dem Display und trainiert fleißig vor sich hin, macht also keine neuen Eingaben. Unter Windows und Android habe ich dies im Griff. Bei iOS hilft bisher nur, es in den Settings selbst auf "Nie" einzustellen. Es muss aber ja eigentlich auch einen anderen Weg geben.

Rollo62 18. Jan 2021 06:46

AW: iOS: Idle-Modus deaktivieren
 
Ich kann nirgendwo erkennen dass iOS etwas deprecated oder geändert hat, woher hast Du die Info ?
https://developer.apple.com/document...etimerdisabled
Ich habe noch kein iOS14 zum Testen hier.

Vielleicht hilft das Folgende:
Öfters mal Ein/Ausschalten, das darf man mehrfach machen.
https://stackoverflow.com/questions/...hone-auto-lock

Ich schalte es auch nicht direkt bei Start der App ein, sondern erst kurz bevor ich es wirklich brauche,
vielleicht macht das einen Unterschied ?

philipp.hofmann 18. Jan 2021 13:15

AW: iOS: Idle-Modus deaktivieren
 
Ich habe die Erfahrung auf meinem eigenen iOS-Tablet gemacht. Ich mache es dort auch genauso, ich aktiviere den Modus erst, wenn ich es brauche und wieder aus, wenn es nicht mehr der Fall ist. Das der Code soweit stimmt, sehe ich daran, dass es unter Windows und Android funktioniert. MacOS müsste ich nochmals testen, bei iOS hat sich das Tablet nach 15 min abgeschaltet und ich musste das OS-Setting anpassen (was ich ja genau vermeiden wollte).

Rollo62 18. Jan 2021 14:40

AW: iOS: Idle-Modus deaktivieren
 
Es gibt ja mehrere Hinweise im Web das ein regelmäßiges Ein- / Ausschalten helfen soll,
z.B. alle 10 Sek denke ich mal.
Ich habe das bei mir vorbereitet, aber bisher nicht gebraucht.
Ich teste mal ob es irgendwie schadet unter iOS13.x

Edit:
Habe gerade mit iOS 13.6 / 14.3 getestet, und es geht bei mir mit dem regelmäßigen Ein- / Ausschalten.
Zumindest bleibt es längere Zeit wach, und geht schlafen wenn ich den Zyklus stoppe.
Getestet habe ich das es zumindest 20min lang aktiv bleibt.

philipp.hofmann 18. Jan 2021 14:48

AW: iOS: Idle-Modus deaktivieren
 
Ok, teste ich auch mal.

philipp.hofmann 18. Jan 2021 17:21

AW: iOS: Idle-Modus deaktivieren
 
Ich setze jetzt den Idle-Modus alle 100 Sekunden nochmals (ohne ihn zurückzusetzen). Dies hilft tatsächlich.

Rollo62 19. Jan 2021 06:27

AW: iOS: Idle-Modus deaktivieren
 
Interessant, stimmt ich hatte irgendwas von 2 Minuten gelesen.
Bin mir aber gar nicht 100% sicher wovon die Zeiten genau abhängen können, und ob das immer konstant bleibt.
Dann kann ich versuchen auch etwas höher in der Zeit zu gehen, 55 Sekunden sind ja auch schon mehr als genug.

Ich habe generell ungerne solche Timer im Hintergrund laufen, die mir dann irgendwann reinhauen wenn ich es gar nicht brauche.
Das ist extrem schlecht zu debuggen fals es mal kracht, aber wenn es halt sein muss.

Bei mir fange ich deshalb auf jeden Fall BecomeInactive/BecameActive ab, um den Timer zu zu setzen im Hintergrund.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:44 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz