【问题标题】:setKeepAliveTimeout handler not called sometimes有时不调用 setKeepAliveTimeout 处理程序
【发布时间】:2013-12-13 23:15:31
【问题描述】:

我正在 iOS 上编写一个 VoIP 应用程序。我为我的项目设置了 'voip' 和 'audio' UIBackgroundModes 属性,并成功调用了 setKeepAliveTimeout,但有时,在指定时间之后,我的应用程序不会被唤醒并且不会调用处理程序。但是,有时可以。 有人遇到过这个吗?我不知道原因。

【问题讨论】:

  • 情况不一样,我的应用程序进入后台后似乎永远不会唤醒,而不是不规则或不及时唤醒。
  • 最近我遇到了同样的问题。你碰巧解决了这个问题吗?或者也许有一些线索为什么会发生这种情况?
  • 没有,好久没遇到了,前几天又遇到了一个烦人的问题!

标签: ios background voip keep-alive


【解决方案1】:

好吧,这可能为时已晚,但仍仅供将来参考。

我遇到了同样的问题。当应用程序进入后台时,我正在设置保持活动计时器。

问题在于,有时 voip 应用程序在后台启动,因此我在 applicationDidEnterBackground 代码中的计时器设置从未被调用,并且应用程序在一段时间后只是进入睡眠状态。

所以我已将此代码添加到应用程序并完成启动。

// in application:didFinishLaunchingWithOptions:
if (application.applicationState == UIApplicationStateBackground) {    
    [self setupKeepAliveTimer:application]; // setup timer as you need
}

我希望对某人有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-11-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-21
    • 1970-01-01
    • 2018-09-10
    • 1970-01-01
    • 2019-08-16
    相关资源
    最近更新 更多