从Banner /自定义操作启动应用程序时,不会调用applicationDidBecomeActive

我在尝试实现iOS-8的新交互式通知时遇到了这个奇怪的问题。 在处理本地通知时,一切都按预期工作,但对于APNS来说,事情并不奏效。

详细信息:我得到了自定义推送,因为它应该通过横幅(我只注册到最小的上下文),但是当用户点击代表自定义操作的button时,我的应用程序的代表applicationDidBecomeActive:不被调用; 事实上 – 应用程序卡在非活动模式。

奇怪的是,从Notifications(通知)屏幕启动时,应用程序会进入活动模式(“Today”(当前)的右侧)。 除此之外,在这两种情况下,我的代表:

 handleActionWithIdentifier:forRemoteNotification:completionHandler: 

确实使用正确的标识符进行调用。

任何帮助将非常感激!

看起来像这是一个iOS 8的错误。 在Urban Airship的iOS变更日志文件中find以下内容:

iOS 8笔记(2014年9月25日更新)

iOS 8.0.0的已知问题可能会影响您的应用程序: – 从交互式通知启动时,应用程序不会进入“活动”状态,并且后续应用程序会话不会收到应用程序:didBecomeActive委托调用或
UIApplicationDidBecomeActiveNotification通知。 应用程序状态永远不会从“非活动状态”(雷达#18179525)转换而来。 这将影响使用交互式通知的应用程序报告的准确性。

http://docs.urbanairship.com/reference/libraries/ios/latest/ios_changelog.txt

我没有发现任何迹象表明,这已经在最新的iOS 8版本,包括8.1和8.2-Beta中解决,也没有任何解决方法来处理它。