私は音楽/ビデオプレーヤーアプリを開発していますが、アプリがフォアグラウンドにあるときに自動ロックを無効にする方法を知っておく必要があります。
使用する必要があることはわかっています[[UIApplication sharedApplication] setIdleTimerDisabled:YES];
が[[UIApplication sharedApplication] setIdleTimerDisabled:NO];
、それらを配置するのに最適な場所はどこですか?
私は音楽/ビデオプレーヤーアプリを開発していますが、アプリがフォアグラウンドにあるときに自動ロックを無効にする方法を知っておく必要があります。
使用する必要があることはわかっています[[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
そしてSwift3.0では:
UIApplication.shared().isIdleTimerDisabled = true
私の2セント:xcode 9の場合:
application.idleTimerDisabled = true
..... AppDelegate.swift:28:15:「idleTimerDisabled」の名前が「isIdleTimerDisabled」に変更されました
それで:
application.isIdleTimerDisabled = true