应用程序 LifeCycle 事件和方法(App.cs)

每个 Windows Phone 项目都包含 App.cs 类:

public sealed partial class App : Application

此类是你的全局应用程序上下文。

一般应用类使用:

  1. 应用入口点,特别是各种激活合同。
  2. 应用程序生命周期管理
  3. 应用程序全局资源/服务初始化
  4. 未处理的异常检测。

应用生命周期事件

App.cs 中,你可以订阅生命周期事件:Suspending,Resuming

暂停

当你的应用程序状态更改为 Suspending 状态时引发。暂停状态意味着用户看不到你的应用程序(当用户切换到另一个应用程序时发生),这是你在应用程序终止之前获得的唯一指示。这就是为什么你要保存会话状态的原因,例如当前播放的电影位置,或其他一些有价值的状态信息)。

  • 应用程序终止不是确定性的,操作系统可以随时关闭挂起的应用程序。

恢复

应用程序从挂起模式返回时引发。操作系统会自动恢复应用程序状态(你在应用程序暂停时已经访问过的页面),这是应该恢复应用程序状态的地方,可以在应用程序暂停时更改。

  • 如果你需要刷新应用程序暂停时可能已更改的任何显示内容,则应处理恢复事件。

应用虚拟方法

你还可以覆盖两个虚拟方法:

protected virtual void OnActivated(IActivatedEventArgs args);
protected virtual void OnLaunched(LaunchActivatedEventArgs args);

OnActivated

以某种方式激活应用程序时调用(不正常启动)。如果你只是通过单击磁贴启动应用程序,则无法访问此处。例如,当其他应用启动你的应用时,你就会到达此处。 (你可以通过 IActivatedEventArgs.Kind 激活原因)。

OnLaunched

启动应用程序时调用。每次启动应用程序时都会调用此方法。通常用作应用程序初始化的主要点。