×
Namespaces

Variants
Actions

应用程序生命周期- Windows Phone 7 Mango

From Nokia Developer Wiki
Jump to: navigation, search
SignpostIcon WP7 70px.png
SignpostIcon Code 52.png
Article Metadata

兼容于
文章
翻译:
最后由 hamishwillee 在 16 Jul 2013 编辑

本文介绍了Windows Phone 7 – Mango的应用程序生命周期。

Contents

简介

开发人员需要了解应用程序的生命周期,这样他们才能够更好地理解他们正在开发的应用从而使用最佳做法,从而有助于开发高品质的产品,同时尽量减少开发中的工作量。

应用程序生命周期

事件和状态共同组成了一个应用程序的生命周期。在 Mango中,有4个事件和3个状态。 事件引起应用程序状态的改变。

启动事件

  • 当用户启动一个应用程序时引发此事件。
  • 保持这个事件快速响应,因为用户希望应用能迅速载入。
  • 不要在这个事件中使用严重占用资源的操作。

应用程序启动的代码

private void Application_Launching(object sender, LaunchingEventArgs e)
{
}

运行状态

  • 一旦应用程序启动就进入运行状态。
  • 这种状态将会持续直到用户不再对应用程序进行操作或是手机进入锁定模式。

停用事件

  • 用户退出该应用程序时,引发此事件。
  • 此事件的应用程序上下文(状态)应该保存。一旦重新启动,这个保存的状态应该被应用程序恢复。

停用事件的代码

private void Application_Deactivated(object sender, DeactivatedEventArgs e)
{
}

休眠状态

  • 在Mango之前的版本中没有休眠状态。
  • Mango 中添加这种状态是为了实现在应用之间快速地切换。
  • 触发停用事件的应用程序进入此状态。
  • 在这个状态里,应用程序停止运行,但保留在内存中。
  • 如果其他的正在运行的程序需要更多的内存,处于休眠状态的应用程序可以被墓碑化。

墓碑状态

  • 一旦应用程序被终止,它就进入逻辑删除状态。
  • 这种状态下最多能保存5个应用程序的数据/应用程序状态信息.

激活事件

  • 当用户切换到休眠或墓碑状态的应用程序,该事件被触发。
  • 开发人员应当利用IsApplicationInstancePreserved 属性来判断应用程序是从休眠状态还是从墓碑状态返回。
  • 如果值是true,那么应用程序是休眠状态,否则应用程序就是墓碑状态.

激活事件的代码

private void Application_Activated(object sender, ActivatedEventArgs e) 
{
if(e.IsApplicationInstancePreserved == true)
{ // Dormant State
}
else
{ // Tombstoned State
}
}

关闭事件

  • 当用户从应用程序的第一页点击后退,会触发此事件。
  • 在此事件中的应用程序被终止,你只有10秒钟的时间来保存任何你所需要的数据。
  • 记住,为了保持Windows Metro flow应用程序的一致性,开发人员不应该提供一个显式的退出按钮。

关闭事件的代码

private void Application_Closing(object sender, ClosingEventArgs e)                {        
}
This page was last modified on 16 July 2013, at 11:08.
53 page views in the last 30 days.