我正在iOS上编写一个VoIP应用程序。我为我的项目设置了'voip'和'audio'UIBackgroundModes属性,我成功调用了setKeepAliveTimeout,但是,有时,在指定的时间之后,我的应用程序没有被唤醒并且不会调用处理程序。但是,有时可以。 有人遇到过这个吗?我没有找到线索。
答案 0 :(得分:0)
嗯,对于答案来说可能为时已晚,但仍仅供将来参考。
我遇到了同样的问题。当应用程序进入后台时,我正在设置保持活动计时器。
问题在于,有时voip应用程序在后台启动,因此我的applicationDidEnterBackground
代码中的计时器设置从未被调用过,应用程序在一段时间后才会进入休眠状态。
所以我已将此代码添加到app确实完成启动。
// in application:didFinishLaunchingWithOptions:
if (application.applicationState == UIApplicationStateBackground) {
[self setupKeepAliveTimer:application]; // setup timer as you need
}
我希望能帮助别人。