Windows Store Application Life-Cycle

Introduction

In my last article we have seen plans to develop the Windows Store app. In this article we will see how the life-cycle goes on for Windows Store applications. As all of you are aware of, every application has it's own life-cycle for example the ASP.Net page life cycle. All are aware of the word "Life-Cycle" which means a specific sequence of the application from start to finish of the application. In this article we will see the same in the case of a Windows Store Application (Metro Style Application).

In every application life-cycle we know that there are several steps or stages involved in development. Here in a Windows Store Application there also are some stages or steps. In this article we will see Windows Store Application Life-Cycle from scatch i.e. from user downloading and installing to removal of our application from the system. So let's get ready.

Figure 1: Application Life-Cycle

lifecycle.jpg

From the above diagram you get a clear idea of Windows Store application life-cycle stages. We will dig more into these stages of the Windows Store application life cycle below.

Download Application

After having developed your Windows Store application and posted it on the Windows Store (I talked about the store in my first article) it is available for a user to download. Your application is available in the store as a package the user will download as a package having an extension .appx. This application package contains the manifest files and the application file which builds your application.

Install Application

After downloading the application from the Windows Store it must be installed on the user's system for execution. In your package, as I already discussed above, is a manifest file that is used when the user installs your application or removes your application from their system.

Application Execution

Once the user has installed your application successfully on their systems then it is ready to be executed. I hope here I need not to tell you the meaning of execution as all of you are aware of execution. In this step the Windows Store provides a unique execution sequence to execute the application. Generally, ApplicationExecutionState is an enum provided by Windows 8 programming interface which contains the values denoted in white boxes in the first column in the diagram. We will discuss these Application ExecutionStates one-by-one.

Not Running

All of you can understand what is meant by the words Not Running; in other words it is not running currently. This step occurs in several conditions like when the user is installing your application from the store, clicks on End task in the task manager while the application is running, restarts the computer etc. This state is helpful in preparing the initial UI of your application. Do not use the event handler associated with this state to populate a large dataset for your application. We have another state and associated event handler to do that.

Running

When your application is launched it is still in the Not Runing state. The Runing state occurs after it has passed from the launched or the not runing state. When your user does anything with your application UI then probably we can say the application is now runing else it is in the Not Runing state.

Suspended

This stage occurs when the user switches from your application to another application or Windows enters into a low power state. In this case Windows will wait for 10 seconds; if the user does not return to the application within this timeframe then Windows suspends your application. In your application if you need to save any important data or needs to maintain the state of your application then this is the right place to do that. This suspend state provides an event handler to do this kind of work.

Terminated

Once your application has been suspended then to save the system resources Windows can terminate the suspended applications. This state occurs when Windows is running on low resources.

Closed By User

This is one of the last stages in the Windows Store ApplicationExecutionState enum where the user can terminate your application by using close gestures or by using keybord shrtcuts Alt+F4.

Launch Application

Let's move one step back on our root after ApplicationExecutionStates. Your application is launched by the user as we discussed above in the Not Running state. Generally this state is used to show the application splash screens. This splash screen denotes your application is ready to display the initial UI. In this step you can initiate the component like a splash screen but if your are loading any data from a datasource then this is not the right place to do that. The data loading work for your application UI must be done out of this activation process.

Application Activation

It is as we saw in the last state i.e. Launch Application as well as in ApplicationExecutionStates i.e. Not Running. In these states our application is still not active; it is still in the Not Running state. After finishing our Not Running states we can force the user to activate our application by providing some events. Once the user responds to a specific event, our application becomes active. Here we have an event handler associated with application activation i.e. Activated. You can use this event handler to work with system contracts (I explained contract in my last article "Plan for Windows Store Application").

Remove Application

This is the last stage in Windows Store application life cycle where the user removes your application from their systems. Here once again the application manifest is used for removing your application.

Conclusion

Here I'm stopping this discussion. I hope you enjoyed this article. Next in the series I'll return with another new and interesting topic.

Up Next
    Ebook Download
    View all
    Learn
    View all