Windows Phone 7 Application Lifecycle: Listing 1

Saving transient application state.

private DateTime sessionStartedAt;
private double ActiveSessionDuration {
  get { return DateTime.Now.Subtract(sessionStartedAt).TotalMilliseconds; }
  set { sessionStartedAt = DateTime.Now.AddMilliseconds(-value); }
}

private void Application_Launching(object sender, LaunchingEventArgs e) {
  sessionStartedAt = DateTime.Now;
}

private void Application_Activated(object sender, ActivatedEventArgs e) {
  ActiveSessionDuration=
    (double)PhoneApplicationService.Current.State["SessionDuration"];
}

private void Application_Deactivated(object sender, DeactivatedEventArgs e) {
  PhoneApplicationService.Current.State["SessionDuration"] = 
    ActiveSessionDuration;
}

private void Application_Closing(object sender, ClosingEventArgs e){
  Debug.WriteLine("Session active for: " + DateTime.Now.Subtract(sessionStartedAt).TotalSeconds);
}
comments powered by Disqus

Featured

  • Microsoft Agent Framework Makeover: Claws, Loops and Harnesses

    Microsoft's newly released Agent Framework Harness packages the loops, planning, memory, context management and safety controls that developers previously had to assemble around AI models themselves.

  • Visual Studio 2026 Gives Copilot Built-In Skills -- and Makes Them Prove Their Worth

    Microsoft is moving Agent Skills beyond bring-your-own instructions by shipping expert-authored workflows with the IDE, while keeping them off by default until testing shows their benefits justify the additional token use.

  • Copilot AI Billing Shock Met with Meters, Caps and Token-Saving Tools

    GitHub is layering spending limits, expanded credit allowances and increasingly granular usage reporting onto Copilot, while Microsoft is reworking Visual Studio and VS Code to expose -- and reduce -- the cost of agentic development.

  • The AI-Powered Software Development Lifecycle

    René van Osnabrugge makes the case that AI's biggest opportunity in software development is not faster coding -- it's reducing the friction everywhere else in the SDLC.

Subscribe on YouTube