optimizing windows phone apps

Download Optimizing windows phone apps

Post on 18-Jan-2015




1 download

Embed Size (px)




  • 1. Optimizing YourWindows PhoneMango ApplicationsJinho.Seo@microsoft.comMicrosoft Korea

2. Application Certification Requirements 1. Application Policies 2. Content Policies 3. Application Submission Requirements 4. Technical Certification Requirements 5. Additional Requirements for SpecificApplication Types 3. Submission and Certification Processhttp://msdn.microsoft.com/en-us/library/hh184843(v=vs.92).aspx 4. Application Submission Requirements 4.1 Installation Package Validation 4.2 Application Code Validation 4.3 Phone Capabilities Detection 4.4 Language Validationhttp://msdn.microsoft.com/en-us/library/hh184844(v=vs.92).aspx 5. Technical Certification Requirements 5.1 Application Reliability 5.2 Performance and Resource Management 5.3 Phone Functionality 5.4 Security 5.5 Content Validationhttp://msdn.microsoft.com/en-us/library/hh184840(v=vs.92).aspx 6. Additional Requirements for SpecificApplication Types 6.1 Location Aware Application 6.2 Push Notifications Application 6.3 Applications Running under a Locked Screen 6.4 Music + Videos Hub Application 6.6 Applications That Extend the Picture Viewer 6.7 Applications That Extend the Share Picker 6.8 Applications That Extend the Pictures Hub 6.9 Applications That Play or Stream Background Audio 6.10 Applications That Use Background Transferhttp://msdn.microsoft.com/en-us/library/hh184838(v=vs.92).aspx 7. Mango Improvements 1. General Runtime Improvements Examples: Faster, more responsive scrolling Lower memory footprint Better video playback 2. Improved Default Behaviors For 7.1 Apps Examples: Fast-App-Switching Better XAML Parser 3. New Optional Behaviors For 7.1 Apps 8. 32 Bits-Per-Pixel Rendering 7.0 supports only 16 bpp rendering banding in gradients In Mango the default is still 16 bpp Apps can opt-into 32 bpp in the manifest Recommended if your app wants to show Photos Designs with gradients Video apps get opted in automatically 9. Demo - 32 bpp vs. 16bpp 10. Background Image Decoding In 7.0 image decode happens on UI thread May result in stuttering, non-responsive UI 7.1 apps can opt-into background decode 11. Demo - ImageDecodinghttp://msdn.microsoft.com/en-us/library/ff967560(v=vs.92).aspx 12. Media and Objects Supported Media Codecs for Windows Phone http://msdn.microsoft.com/en- us/library/ff462087(v=vs.92).aspx Set Build Action to Content for Media Hiding and Display Objects Visibility vs. Opacity User Input Use Manipulation Events http://msdn.microsoft.com/en- us/library/ff426933(VS.95).aspx 13. Progress Bar, WebSerivces Use PerformanceProgressBar instead ofProgressBar Use HttpWebRequest instead of WebClient Application Startup Understanding Threads Identifying Performance Issues for Graphics-Intensive Applications http://msdn.microsoft.com/en-us/library/ff967560(v=vs.92).aspx 14. Memory Testing First: Design your app with memory in mind Monitor your memory usage Test with real word data Consider monitoring your heavy objects Page instances UserControl instances Data objects that participate in binding Tiny UI leak can cause entire visual tree to beleaked Use the 7.1 Profiling Tools 15. Demo MemoryTesting 16. Control Your App With Sockets Use socket APIs to connect to your desktopcomputer This can be useful for testing/debuggingscenarios: Monitoring app metrics (such as memory/heapobjects) Logging messages/results Controlling the app workflow 17. End-To-End Testing Navigating through the entire app State and visuals are correct No leaks and no crashes Investing in an automated script may pay off Do the math Consider your test matrix Think about stability (memory and stress testing) Write code with testing in mind 18. Demo End-To-EndTesting 19. Windows Phone MarketplaceTest Kit Objectives : Protect to fail submission process http://msdn.microsoft.com/en-us/library/hh394032(v=vs.92).aspx