当app force退出或崩溃时如何执行注销function

我想在app强制退出或意外崩溃时执行注销function。 要执行此任务,我需要调用Web服务从服务器端数据库中删除我的信息。但是当app强制退出或崩溃时,我无法调用Web服务。 所以请帮我解决这个问题。

applicationWillTerminate

applicationWillResignActive

委托方法对我不起作用!

谢谢!

有一些方法可以让应用程序退出,在那里拦截并导致代码执行变得困难(可能是不可能的)。 您最好让主机系统检测到断开连接或超时,并从该侧自动注销用户。

两种解决方法可能有效:

  1. 合并超时function。 如果用户未在特定时间范围内处理信息或触发活动代码进行注册,则自动请求Web服务删除他/她/您的信息。

  2. 在应用程序的后台运行一个小的重复代码。 尽可能减少内存占用量。 使代码经常向服务器发送一点或一字节的信息。 如果您愿意,服务器可以自动删除它。 如果此“信号”停止,则自动请求Web服务删除他/她/您的信息。

通过“强制戒烟”我假设你的意思是系统杀死了应用程序。 在这种情况下,将调用applicationWillTerminate方法。 来自Apple文档:

…在应用程序在后台运行(未暂停)并且系统由于某种原因需要终止它的情况下,可以调用此方法

我假设当用户从任务切换器杀死应用程序时(您需要测试),会发生同样的情况。

如果应用程序因故障的性质而崩溃,则不会调用任何appDelegate方法。