我正在检查xcode中的日志,而应用程序处于睡眠模式。我正在使用基于voip的应用程序。我已经完成了有关voip的所有手续。我可以让应用程序进入睡眠模式超过20分钟。但是,我断开设备与系统后,我已经运行在睡眠模式的应用程序。在3-4分钟内应用程序崩溃。我检查了设备日志崩溃。 它表示像在ios 7.1和ios 8.0中运行时,应用程序在睡眠模式下崩溃
< BKProcessAssertion:0x1463ab50> ID:XXX-XXX-XX ...名: SwyxOTT调用,从 - [应用enterIntoBackgroundState]过程: < BKNewProcess:0x14529680; com.aahlaad.SwyxiOSClient; PID:289> permittedBackgroundDuration:180.000000原因:finishTask所有者 PID:289 preventSuspend preventIdleSleep preventSuspendOnSleep
我使用keepalive超时功能。你可以看到下面的功能。我正在使用UDP连接,pjsip 2.2.1。
[self performSelectorOnMainThread:@selector(keepAlive) withObject:nil waitUntilDone:YES];
[[UIApplication sharedApplication] setKeepAliveTimeout:KEEP_ALIVE_INTERVAL handler: ^{
[self performSelectorOnMainThread:@selector(keepAlive) withObject:nil waitUntilDone:YES];
}];
有没有人知道这个问题请让我知道。
感谢您的答复。这是解决这个问题,我不确定。 – 2014-10-31 08:30:16
亲爱的朋友请不要忘记接受答案。 – bhavik 2014-11-03 04:43:47
这并不能解决他的崩溃问题,也不会在屏幕关闭时使其应用程序保持活动状态。它所做的就是防止iOS自动调暗并最终关闭屏幕。每[Apple文档](https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIApplication_Class/#//apple_ref/occ/instp/UIApplication/idleTimerDisabled):'唯一的应该禁用空闲计时器正在映射应用程序,游戏或程序,当用户交互最少时,应用程序需要继续显示内容 – 2015-01-08 01:51:47