ApplicationLifecycleJason LeeEthos Technologies
AgendaInterruptions & User Expectations
Application Lifecycle
Tombstoning
Lifecycle Events
Resource Management
Play Time
Q & AInterruptionsInterruption comes from
A user action (i.e. press the start button)
An external event (an incoming phone call)
An internal action (i.e. taking a photo, choosing a contact)
Interruption characteristics
Interruptions are not predictable
Interruptions tend to happen frequently User ExpectationsPhone and Applications
Phone is resource-constrained device, therefore we need to consume resources carefully
Phone is different from Desktop OS, which can hold multiple windows running processes simultaneously
However…
A user expects the application to be able to remain in the state where it was left
Microsoft development guideline requires application to provide such illusions that it keeps running continuously until it is get killedApplication LifecycleRunningDormantTombstonedDeactivatedDeactivatedDead, and no longer lives in memory.But with somethingcarved on a TombstonePhone resources detachedThreads & Timers suspendedBut app instance remains in memoryActivatede.Preserved  == trueFast App ResumeActivatede.Preserved  == falseYou Will See Resuming Process Bar

07 wp7 application lifecycle