Windows Phone Application Analysis for Windows Phone 8
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
The Windows Phone Application Analysis tool is a monitoring and profiling tool to evaluate and improve the quality and performance of your Windows Phone apps. This tool lets you easily make quality assurance a part of the development cycle, and not just an afterthought. This topic provides an overview of the Application Analysis tool and describes how it can help you to improve the quality and performance of your Windows Phone apps.
The Application Analysis tool provides the following options:
App Monitoring. With the app monitoring option you can evaluate the most important behaviors of your app that contribute to a good user experience, such as start time and responsiveness.
To use app monitoring, you have to run your app on a Windows Phone 8 device or emulator. However, you can monitor apps that target Windows Phone 8 or Windows Phone OS 7.1. App monitoring is supported only for managed apps - you can’t monitor Direct3D apps.
For information about how to run monitoring and review the results, see App monitoring for Windows Phone 8.
Profiling. With the profiling option you can evaluate either execution-related or memory-usage aspects of your app.
You can profile apps that target Windows Phone 8 or Windows Phone OS 7.1.
For information about how to run profiling and review the results, see App profiling for Windows Phone 8. For information about how profiling Direct3D apps, see Profiling Direct3D apps for Windows Phone 8.
This topic contains the following sections.
If you want to create a successful Windows Phone app that users will enjoy, then you have to spend time to improve its quality and performance. Even if you have a great idea for an app, users will stop using it and will give it negative reviews if the app is slow, unresponsive, or crashes periodically.
In addition to creating a great user experience, Windows Phone apps must meet certain performance requirements to be published in the Windows Phone Store. For example, there are certification requirements regarding the following:
App launch time
Maximum memory usage by the app
You can use the Windows Phone Store Test Kit to identify some of these issues. However the Application Analysis tool helps you to identify, understand, and troubleshoot the source of these issues in your apps.
For more information about the requirements and tools discussed in this section, see the following topics:
The Application Analysis tool enables you to capture the most important measurements of app quality and performance while exercising its features as an ordinary user would use it.
The Application Analysis tool is installed as part of the Windows Phone SDK and is fully integrated into Visual Studio. Each time you run the Application Analysis tool, a file is created in the project folder that contains performance information for that session. When selected, the contents of the file are displayed within Visual Studio and show the results in a series of tables and graphs that contain additional information.
You can run app analysis while running your app in the emulator or on a phone.
The following illustration shows the options that are available when you launch Windows Phone Performance Analysis.
Typically you stop an analysis session by clicking End Session. However an analysis session is also interrupted when one of the following conditions is true:
If you switch to another app and your app is deactivated, then analysis pauses.
If your app is tombstoned, then analysis stops.
If you terminate the app in some way, then analysis stops.
The Application Analysis tool analyzes multiple aspects of your app’s behavior and performance and displays the results in a graph format. Each area is color-coded so it is easy to recognize in the graph. The following image shows an example graph.
The following rows of information are displayed in the graph after both app monitoring and app profiling.
The following rows of information are displayed in the graph only after app profiling.