Pratap Lakshman, Senior Program Manager in his session at the recently concluded //Build in San Fransisco demonstrated the usage of the various diagnostics tools introduced in Visual Studio 2013 Preview, which helps you to measure the various aspects involved in the development of XAML based Windows Store apps.
According to Pratap, freezing is the main cause of bad reviews for nearly 75% of apps followed by crashes which account for 70%. While 55% of apps result in slow responses, 50% of bad reviews points to heavy battery usage of apps. He says that users look for consistent performance along with app quality.
Pratap further elaborates that in order for the mobile app to perform well it should be fast, fluid and efficient. While fast denotes app launch and page navigation, fluid concentrates on scrolling, panning and amination related aspects. The efficient points out to battery life and memory usage. He advises developers to perform a detailed post mortem on profile
data analysis.
According to Pratap, performance and diagnostics hub included with Visual Studio 2013 serves as the single entry point for the profilers. Moreover, you should build visual tree for hit-testing and rasterization and also render visible objects into primitives. He suggests you to reduce complexity and update screen content in vsync cadence
The session also discussed at length about the new energy consumption tool that discovers energy hungry segments of an app scenario without any need to make use of power metering hardware and by mapping resource usage to estimated energy using a software power model. It estimates approximate energy consumption by key system resources like the CPU, display and networking and will help you to optimize the resource usage to make the apps more energy efficient.
Pratap in his session specifies that the energy consumption of an app depends upon the type of screen such as LCD, LED, OLED and design choices such as color content and animations. It also varies depending upon the type of network like wired, wireless, 2G, 3G and 4G.