我遇到了一个问题。我的软件需要知道应用程序何时处于后台,以便它与服务器断开连接,并开始接收推送通知。
为此,我使用 UIApplicationDelegate 的方法:
- (void)applicationWillResignActive:(UIApplication *)application
- (void)applicationDidEnterBackground:(UIApplication *)application
- (void)applicationWillEnterForeground:(UIApplication *)application
- (void)applicationDidBecomeActive:(UIApplication *)application
- (void)applicationWillTerminate:(UIApplication *)application
问题是,当越狱设备使用称为后台程序的“调整”时,这将强制您的应用程序保持活动状态而不进入后台,当我们单击 HOME 按钮时,不会调用 UIApplicationDelegate 的任何方法。
问题是,在 SSL 中连接的每个客户端都在服务器上花费了我很多内存。我真的不在乎设备是否越狱,或者事实上,应用程序将在设备上无限期运行。但是当应用程序不再出现在屏幕上时,我希望他们与服务器断开连接,但我似乎找不到任何方法可以在安装后台程序时通知我此类操作。
解决方案查找:在帖子上查看我自己的答案