Comment empêcher le locking de l’écran sur mon application avec Swift sur IOS

Comment puis-je empêcher le locking de l’écran uniquement lorsque vous utilisez la navigation? Waze a la possibilité de le faire, comment puis-je le faire dans mon application?

Utilisez ceci:

Objectif c:

[[UIApplication sharedApplication] setIdleTimerDisabled: YES]; 

Swift (inheritance):

 UIApplication.sharedApplication().idleTimerDisabled = true 

Swift 3/4:

 UIApplication.shared.isIdleTimerDisabled = true 

Assurez-vous d’importer UIKit .

Voici le lien vers la documentation de apple.developer.com.

Pour Swift 3.0, voici deux options en fonction de l’endroit où vous souhaitez appeler le code:

Inside AppDelegate.swift:

application.idleTimerDisabled = true

En dehors de AppDelegate.swift:

UIApplication.shared().isIdleTimerDisabled = true

Vous pouvez utiliser ma petite librairie Insomnia (Swift 3, iOS 9+) – une autre fonctionnalité intéressante est que vous pouvez empêcher de dormir uniquement lors de la charge.

La idleTimerDisabled idleTimerDisabled est correcte, mais vous devez vous rappeler de la définir sur false par la suite.

Swift 4

dans le fichier AppDelegate.swift, ajoutez la ligne suivante dans la fonction d’ application :

  application.isIdleTimerDisabled = true