IOS接近传感器将屏幕永久睡眠

问题描述:

我是iOS编程的新手,但我的工作需要我为电视演员构建应用程序以便在设置中使用。我在学Swift。这些应用程序不适用于应用程序商店。我正在制作假手机应用程序。制片方希望手机关掉当演员把它自己的脸 - 我有这样的代码:IOS接近传感器将屏幕永久睡眠

//PROXIMITY SENSOR 
func proximityChanged(notification: NSNotification) { 
    if let device = notification.object as? UIDevice { 
     println("\(device) detected!") 

    } 
} 

func activateProximitySensor() { 
    let device = UIDevice.currentDevice() 
    device.proximityMonitoringEnabled = true 
    if device.proximityMonitoringEnabled { 
     NSNotificationCenter.defaultCenter().addObserver(self, selector: "proximityChanged:", name: "UIDeviceProximityStateDidChangeNotification", object: device) 
    } 
} 

它的工作原理,但我的问题是,当接近传感器是从事过久,说手机在演员的口袋里2分钟 - 当他去使用它时 - 屏幕保持黑屏。

如果主页按钮被按下,它会醒来,但会导致它跳出应用程序。如果启动侧面静音/声音切换,它也会醒来。

我猜测,即使应用程序在前台,不知何故接近传感器长时间工作会导致它进入背景。很难在xcode中测试,因为它连接到计算机时不会进入睡眠状态。任何想法是什么导致这一点,以及如何解决它? 谢谢

干净的工作!我以前见过这种情况。你有没有尝试禁用空闲计时器?

[UIApplication sharedApplication].idleTimerDisabled = YES;