APP在iOS中收到外部通知时检测BACKGROUND模式

Posted

技术标签:

【中文标题】APP在iOS中收到外部通知时检测BACKGROUND模式【英文标题】:Detect BACKGROUND mode when APP receive external notification in iOS 【发布时间】:2012-07-13 17:45:58 【问题描述】:

这是我在这里使用了一年多的知识后的第一个问题。

这是我的问题。我正在开发一个应用程序,它允许您记录您的位置以保存路线。该APP的主要目标是学习在开始新路线后开车时不要触摸手机。我可以检测到用户何时休眠手机以及何时解锁手机并返回APP,除非在特定场景下。让我通过以下步骤来解释我自己:

    用户打开APP。 用户开始记录新路线 用户休眠电话 然后外部通知到达(如 Viber 或 Whatsapp 消息)。 用户解锁手机,然后 ios 切换到收到通知的 APP

¿有答案吗?谢谢!

【问题讨论】:

【参考方案1】:

如何在您的 AppDelegate 中调用:

- (void)applicationDidEnterBackground:(UIApplication *)application

【讨论】:

我猜这个方法在上面的场景中是行不通的。它仅在 APP 对焦时有效... ¿ 可以像观看视频一样阻止设备中的“睡眠”模式? - (void)applicationWillResignActive:(UIApplication *)application 怎么样?编辑:我猜在锁定屏幕时会调用它。 应用程序不是一直处于后台模式吗? 是的,刚刚检查过了。当他们锁定屏幕时,您会收到applicationDidEnterBackground:。然后,如果他们从锁屏通知跳到另一个应用程序,您永远不会进入前台,因此您的应用程序只会继续在后台模式下运行。如果您仍处于后台模式,为什么需要知道此特定操作已发生? 其实这是APP的重点。人们需要学会在开车时不要触摸设备。 ¿ 可以锁定设备中的“睡眠”模式吗?就像您在观看视频时...这样我可以向用户显示不要让设备休眠的警报。

以上是关于APP在iOS中收到外部通知时检测BACKGROUND模式的主要内容,如果未能解决你的问题,请参考以下文章

Testflight beta 未向外部测试人员发送电子邮件或推送通知

应用程序在 iOS 11 中处于后台时未收到推送通知

iOS AirPlay:我的应用程序仅在镜像打开时才收到外部显示器通知?

向 iOS App 发送通知时出现 APNS 证书问题

iOS 10 通知服务扩展

如何可靠地检测 iOS 9 上是不是连接了外部键盘?