ios3和ios4退出时的区别

第一种方法:
  1. //首先声明app

  2.        UIApplication * app= [UIApplication sharedApplication];

  3.       //接下来四行是新的功能,能检查设备是否支持后台,老系统和一代的backgroundSupported = NO;支持的自然就是YES
  4.     UIDevice* device = [UIDevice currentDevice];
  5.     BOOL backgroundSupported = NO;
  6.     if ([device respondsToSelector:@selector(isMultitaskingSupported)])
  7.     backgroundSupported = device.multitaskingSupported;
  8.     
  9.       //如果设备不支持后台,那么就继续使用applicationWillTerminate:
  10.     if(backgroundSupported==NO)
  11.     {
  12.         [[NSNotificationCenter defaultCenter ] addObserver:self
  13.                                                   selector:@selector(applicationWillTerminate:)
  14.                                                       name:UIApplicationWillTerminateNotification
  15.                                                     object:app];
  16.     }

  17.        //如果支持
  18.     else{
  19.         
  20.         //这个新的UIApplicationWillResignActiveNotification就是在用户按下home键时的通知,建议用它的selector去保存数据,能防止用户直接在任务管理器里强制退出~
  21.         [[NSNotificationCenter defaultCenter ] addObserver:self
  22.                                                   selector:@selector(applicationDidEnterBackground:)
  23.                                                       name:UIApplicationWillResignActiveNotification
  24.                                                     object:app];
  25.         
  26.                 //这个UIApplicationWillEnterForegroundNotificationapp在切回前台时的通知,可以显示欢迎回来之类的=___=
  27.         [[NSNotificationCenter defaultCenter ] addObserver:self
  28.                                                   selector:@selector(applicationDidBecomeActive:)
  29.                                                       name:UIApplicationWillEnterForegroundNotification
  30.                                                     object:app];
  31.         
  32.     }

第二: 在工程中的Info.plist中有一个属性是“application don‘t  run   in  background”,设置他的值,可以实现后台的运行或者暂停退出等功能。

另附加注意,更详细更有用:
最终完美版:
首先,对于iphone4的手机   抑或是ios4  的项目   重载了下面的几个方法,系统会自动的保留现场,不用自己写代码控制;

- (void)applicationWillResignActive:(UIApplication *)application {
    //home键时执行
    //直接退出程序
    //[[UIApplication sharedApplication] terminateWithSuccess];
    
}


- (void)applicationDidEnterBackground:(UIApplication *)application {
    //home键时执行
    //直接退出程序
  ****  [[UIApplication sharedApplication] terminateWithSuccess];
}


- (void)applicationWillEnterForeground:(UIApplication *)application {
    //重新回到活跃状态
    
}


- (void)applicationDidBecomeActive:(UIApplication *)application {
    //重新回到活跃状态
    
}
然后,打***的那行代码主要实现,按home键程序直接退出,在有些程序中为了安全的考虑会要求这样做,但那行代码引用的是一个私有的方法,app  store的审核是通不过的(本人亲身经历被打回),还有种方法是:把***的那行代码换成“exit(0);”,这行代码也是可以实现按home键退出程序的功能,而且能通过审核
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值