我的应用程序是一个优惠券购物,用户将在手机下载优惠券,完成后,他们将被定向为自动现金支付。如果用户下载了5张优惠券,中间会收到一个电话,因为它是iOS4的,它会转到后台。因此,当我们按下home按钮时,应用程序也会因此行为而转到后台。当用户通过home按钮退出应用程序时,我保存了很少的数据并恢复了优惠券。但在iOS 4行为中,主键按下和电话呼叫中断显示出相同的行为和调用相同的函数,我如何区分这2个。这是一个繁琐的函数,请帮助我......
发布于 2011-08-18 17:02:07
不支持多任务的:对于不支持后台执行或链接到iOS 3.x或更早版本的应用程序,applicationWillTerminate:方法总是在用户退出应用程序时调用。对于支持后台执行的应用程序,当用户退出应用程序时,此方法通常不称为,因为在这种情况下,应用程序只是移动到后台。
具有多任务的:您可以在应用程序委托中实现applicationWillResignActive:委托方法,该方法在临时中断(如incoming phone call或SMS message__)期间调用,或者当用户退出应用程序并开始转换到后台状态时调用。
- (void)applicationWillResignActive:(UIApplication *)application {
flag = YES;
[self doCleanUp];
}
- (void)applicationWillTerminate:(UIApplication *)application {
if (!flag) [self doCleanUp];
}发布于 2011-08-18 22:30:45
iOS不会告诉应用程序是什么导致了中断,比如电话、短信或按下主页按钮。这是苹果公司深思熟虑的设计决定。苹果希望应用程序在设计上表现出相同的行为,无论是什么原因造成的中断。
https://stackoverflow.com/questions/7104690
复制相似问题