Bir*_*chi 36 iphone uiapplicationdelegate ios4
在iOS 4.0中没有调用applicationWillTerminate委托方法当我点击Home按钮时,我看到applicationWillResignActive和applicationDidEnterBackground委托方法被调用.
 - (void)applicationWillResignActive:(UIApplication *)application
{
  NSLog(@"Application Did Resign Active");
}
- (void)applicationDidEnterBackground:(UIApplication *)application
{
  NSLog(@"Application Did Enter Background");
}
当我双击主页按钮并再次启动应用程序时,我发现applicationWillEnterForeground和applicationDidBecomeActive委托方法被调用.
 - (void)applicationWillEnterForeground:(UIApplication *)application
{
  NSLog(@"Application Will Enter Foreground");
}
- (void)applicationDidBecomeActive:(UIApplication *)application
{
  NSLog(@"Application Did Become Active");
}
但我想知道何时调用applicationWillTerminate委托方法,在那里我做一些DB /文件备份例程.
- (void)applicationWillTerminate:(UIApplication *)application{
}
我甚至试图点击减号并删除在后台运行的应用程序,但它仍然没有调用任何委托方法.
有任何想法吗 ???
Ole*_*ann 52
来自iPhone应用程序编程指南:
即使您使用iPhone SDK 4及更高版本开发应用程序,您仍必须为应用程序终止做好准备.如果内存受限制,系统可能会从内存中删除应用程序以腾出更多空间.如果您的应用程序当前处于暂停状态,系统会在不事先通知的情 但是,如果您的应用程序当前在后台运行,则系统会调用
applicationWillTerminate:应用程序委托的方法.您的应用程序无法从此方法请求额外的后台执行时间.
所以,是的,applicationWillTerminate:一般不会很经常的iOS 4.如果有保存数据,你应该在这两个做所谓的applicationWillTerminate:和applicationDidEnterBackground:.
| 归档时间: | 
 | 
| 查看次数: | 24683 次 | 
| 最近记录: |