Як запобігти блокуванню екрана в моєму додатку, швидким на iOS


113

Як я можу запобігти блокування екрана лише під час використання Навігації?

У Waze є можливість це зробити, як це зробити у своєму додатку?

Відповіді:


241

Використовуй це:

Завдання-C:

[[UIApplication sharedApplication] setIdleTimerDisabled: YES];

Швидкий (спадщина):

UIApplication.sharedApplication().idleTimerDisabled = true

Швидкість 3 і вище:

UIApplication.shared.isIdleTimerDisabled = true

Переконайтесь, що імпортуєте UIKit.

Ось посилання на документацію з apple.developer.com.


4
Свіфт повинен бутиUIApplication.sharedApplication().idleTimerDisabled = true
Дуг

3
Swift 3:UIApplication.shared.idleTimerDisabled = true
funkenstrahlen

2
Він змінився наUIApplication.shared.isIdleTimerDisabled = true
Лукас Фарах

1
куди додати цей рядок? У мене немає AppDelegate.swift, оскільки я використовую рідну реакцію
Pradnyanand Milind Pohare

@PradnyanandMilindPohare ви можете додати його куди завгодно, просто переконайтеся, що ця лінія виконується
Mellao

20

Для Swift 3.0 ось два варіанти залежно від місця виклику коду:

Всередині AppDelegate.swift:

application.idleTimerDisabled = true

Поза AppDelegate.swift:

UIApplication.shared().isIdleTimerDisabled = true


2
Поза кодом AppDelegate.swift має бути такий:UIApplication.shared.isIdleTimerDisabled = false
DevStarlight

13

Швидкий 4

у файлі AppDelegate.swift додайте наступний рядок у функцію програми :

    application.isIdleTimerDisabled = true

6

Ви можете використовувати мою маленьку губку Insomnia (Swift 3, iOS 9+) - ще одна приємна особливість полягає в тому, що ви можете запобігти спати лише під час зарядки.

idleTimerDisabledSoultion в порядку , але ви повинні пам'ятати , щоб встановити його на falseпотім.


0

Якщо у вас є більш розвинутий випадок, ви можете використовувати наш невеликий проект: ScreenSleepManager або якщо мова йде лише про конкретні ViewControllers - використовуйте Insomnia, як було зазначено раніше. Посібник, що займався idleTimerDisabledмайже завжди, викликав у мене деякі проблеми (наприклад, забув перевстановити на помилкові або обробити кілька (вкладених) модулів, намагаючись його встановити).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.