您的位置:首页 > 移动开发

iOS 关于AppDelegate中的各种委托的使用 状态更改通知

2017-03-17 11:09 190 查看
每个委托方法仅在一种状态中调用(每个通知也仅在一种状态中出现,这些委托方法和通知都直接与某种“运行”状态相关:活动、不活动 和 后台。
       UIApplicationDidFinishLaunchingNotification (通知名称) ---> application:didFinishLaunchingWithOptions:(委托方法):在应用程序启动后直接进行应用程序级编码的主要方式。

      UIApplicationWillResignActiveNotification(通知名称)--->applicationWillResignActive:(委托方法):用户按下主屏幕按钮调用 ,不要在此方法中假设将进入后台状态,只是一种临时变化,最终将恢复到活动状态

      UIApplicationDidBecomActiveNotification(通知名称) ---->applicationDidBecomeActive:(委托方法):应用程序按下主屏幕按钮后想要将应用程序切换到前台时调用,应用程序启动时也会调用,可以在其中添加一些应用程序初始化代码

     applicationWillResignActive:和applicationDidBecomeActive:这两个方法代表着应用程序从活动状态过度到不活动状态,是启用或禁用任何动画、应用程序那的音频或其他处理应用程序表示(向用户)的项目的不错位置。

      UIApplicationDidE
4000
nterBackgroundNotification(通知名称)----->applicationDidEnterBackground:(委托方法):应用程序在此方法中释放所有可在以后重新创建的资源,保存所有用户数据,关闭网络连接等。如果需要,也可以在这里请求在后台运行更长时间。如果在这里花费了太长时间(超过5秒),系统将断定应用程序的行为异常并终止他。

     UIApplicationWillEnterForegroundNotification(通知名称) ---->applicationWillEnterForeground:(委托方法):当应用程序在applicationDidEnterBackground:花费了太长时间,终止后,应该实现此方法来重新创建在applicationDidEnterBackground中销毁的内容,比如重新加载用户数据、重新建立网络连接等。

     请注意,当巧用applicationDidEnterBackground:时,可以安全地假设最近也调用了applicationWillResignActive

     UIApplicationWllTerminateNotification(通知名称) ----> applicationWillTerminate:(委托方法):现在很少使用,只有在应用程序已进入后台,并且系统出于某种原因决定跳过暂停状态并终止应用程序时,才会真正调用它。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息