簡體   English   中英

當app處於前台模式時,如何禁用iPhone / iPad自動鎖定?

[英]How to disable iPhone/iPad auto-lock while app is in foreground mode?

我正在開發一個音樂/視頻播放器應用程序,只需要知道如何在我的應用程序處於前台時禁用自動鎖定。

我知道我要使用[[UIApplication sharedApplication] setIdleTimerDisabled:YES]; [[UIApplication sharedApplication] setIdleTimerDisabled:NO]; 在某些時候,但在哪里放置它們的最佳位置?

啟用空閑計時器

- (void)applicationWillResignActive:(UIApplication *)application

並禁用它

- (void)applicationDidBecomeActive:(UIApplication *)application

禁用它的最佳位置是didFinishLaunchingWithOptions。 當應用程序在后台時,系統將自動處理設置無效。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    application.idleTimerDisabled = YES; 
    return YES;
}

我發布了此備選方案,因為當出現警報(電子郵件,消息,日歷事件等)或通知中心或控制中心啟動時,已接受的答案不會阻止自動鎖定。

Swift 3.0:

在AppDelegate.swift中: application.idleTimerDisabled = true

在AppDelegate.swift之外: UIApplication.shared().isIdleTimerDisabled = true

在Swift 3.0中:

UIApplication.shared().isIdleTimerDisabled = true

我的2美分:對於xcode 9:

 application.idleTimerDisabled = true

..... AppDelegate.swift:28:15:'idleTimerDisabled'已重命名為'isIdleTimerDisabled'

所以:

application.isIdleTimerDisabled = true

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM