AppDelegate

本文详细介绍了iOS应用的各种生命周期状态,包括应用启动、进入前后台、活跃状态变化及终止过程中的关键方法。通过这些方法,开发者可以更好地管理和控制应用的状态转换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


//程序入口:状态  应用程序开始加载时触发;
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    
    NSLog(@"应用程序开始加载时触发%s,%d",__FUNCTION__,__LINE__);

    self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]autorelease];
    // Override point for customization after application launch.
    self.window.backgroundColor = [UIColor whiteColor];
    [self.window makeKeyAndVisible];
    return YES;
}

//状态  :当应用程序将要取消活跃状态时 触发;例如:电话打进来时,接受信息时 会触发该方法
//该方法用来取消或者暂停当前正在运行的任务(例如:让定时器无效(不执行),停止游戏;让当前正在播放的视频 音频暂停)
- (void)applicationWillResignActive:(UIApplication *)application {
    NSLog(@"应用程序将要取消活跃状态时触发%s,%d",__FUNCTION__,__LINE__);

    // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
    // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.
}


//状态 :应用程序进入后台 使用该方法释放共享资源,保存用户信息, 让定时器无效;  存储当前应用程序状态为下次恢复活跃状态是使用;如果你的应用程序支持后台操作,那么,此方法可以代替appLicationWillTerminate:(程序退出)方法了前提是用户登录时
- (void)applicationDidEnterBackground:(UIApplication *)application {
    NSLog(@"应用程序进入后台%s,%d",__FUNCTION__,__LINE__);
    // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
    // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
}

//应用程序进入前台时触发;
//此方法用来重新唤醒后台的任务
- (void)applicationWillEnterForeground:(UIApplication *)application {
    NSLog(@"应用程序进入前台%s,%d",__FUNCTION__,__LINE__);
    // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background.
}
// 状态:程序已经成为活跃状态;
//该程序常用于启动不活跃时暂停的任务 或者启动 之前还没有运行过的程序;
// 如果之前的程序在后台,那么在重新启动的时候,还会做一次刷新操作
- (void)applicationDidBecomeActive:(UIApplication *)application {
    NSLog(@"程序成为活跃状态%s,%d",__FUNCTION__,__LINE__);
    // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
}

// 状态: 退出当前程序时 触发
- (void)applicationWillTerminate:(UIApplication *)application {
    NSLog(@"退出当前程序%s,%d",__FUNCTION__,__LINE__);
    // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值