Optimizing windows phone apps
Upcoming SlideShare
Loading in...5
×
 

Optimizing windows phone apps

on

  • 3,270 views

 

Statistics

Views

Total Views
3,270
Views on SlideShare
911
Embed Views
2,359

Actions

Likes
1
Downloads
3
Comments
0

5 Embeds 2,359

http://blogs.msdn.com 2350
http://ppe.blogs.msdn.com 4
http://webcache.googleusercontent.com 2
http://web.archive.org 2
https://blogs.msdn.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Optimizing windows phone apps Optimizing windows phone apps Presentation Transcript

  • Optimizing YourWindows PhoneMango ApplicationsJinho.Seo@microsoft.comMicrosoft Korea
  • Application Certification Requirements 1. Application Policies 2. Content Policies 3. Application Submission Requirements 4. Technical Certification Requirements 5. Additional Requirements for Specific Application Types
  • Submission and Certification Processhttp://msdn.microsoft.com/en-us/library/hh184843(v=vs.92).aspx
  • 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
  • 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
  • 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
  • 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
  • 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 opt’ed in automatically
  • Demo - 32 bpp vs. 16bpp
  • 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 <Image x:Name="myBackgroundDecodedImage"> <Image.Source> <BitmapImage UriSource="http://www.foo.com/bar.jpg" CreateOptions="BackgroundCreation"/> </Image.Source> </Image>
  • Demo - ImageDecodinghttp://msdn.microsoft.com/en-us/library/ff967560(v=vs.92).aspx
  • 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
  • Progress Bar, WebSerivces Use PerformanceProgressBar instead of ProgressBar 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
  • 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 be leaked Use the 7.1 Profiling Tools
  • Demo – MemoryTesting
  • Control Your App With Sockets Use socket APIs to connect to your desktop computer This can be useful for testing/debugging scenarios:  Monitoring app metrics (such as memory/heap objects)  Logging messages/results  Controlling the app workflow
  • 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
  • Demo – End-To-EndTesting
  • Windows Phone MarketplaceTest Kit Objectives : Protect to fail submission process http://msdn.microsoft.com/en- us/library/hh394032(v=vs.92).aspx