当应用未运行时,在后台以固定的时间间隔重复调用函数

Call a function repeatedly in fixed interval of time in background when the app is not running

提问人:swathy krishnan 提问时间:3/3/2015 最后编辑:Paulw11swathy krishnan 更新时间:3/3/2015 访问量:277

问:

我需要检查手机是否在应用程序未运行时以 10 秒的间隔时间重复连接到同一个 WIFI 网络。

可以用以下方法编码吗:-

- (void)applicationWillResignActive:(UIApplication *)application

如何实现它??

iOS Objective-C iPhone iPad iOS5

评论


答:

2赞 Paulw11 3/3/2015 #1

简短的回答是你不能 - 一旦你的应用在后台运行,你的执行选项就会受到限制,如《iOS 应用编程指南》中所述

0赞 drago 3/3/2015 #2

正如 Paulw11 已经指出的那样,你不能完全做到这一点。最好的办法是请求一个后台任务,该任务将为您提供大约 3 分钟的执行时间 (iOS 7+) + 请求有关重大位置更改的通知 [1],它可以在每次手机信号塔更改时唤醒您的应用程序(这可以与后台任务结合使用)。

出于实验目的,你可能会在后台滥用音频播放器,以防止应用进入挂起状态 [2]

[1] https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/LocationAwarenessPG/CoreLocation/CoreLocation.html

[2] http://code.tutsplus.com/tutorials/ios-multitasking-background-audio--mobile-6833