Recently I've been working on a project and we discovered something that have some impact on the performance of a Windows Phone application. This is probably a mistake that we did when implementing the code, but it may be the kind of mistake that many developer will do.
Quickly, each time we were calling the web service we were validating the network connectivity by validating the property “ NetworkInterface.NetworkInterfaceType ”. Behind that property, there is a process that validate the connectivity. This process is calling a page “http://www.msftncsi.com/ncsi.txt” to see if there is any connectivity and which type of connectivity. But the problem is that is done synchronously. So in our case we were calling multiple times this process, which result to execute the process of validating the Url mention before synchronously multiple times. So each web service call must wait for the network validation before executing the call. And because it’s on the web the response can be fast and can also be very long before we get the response.
In our case we did implement a wrapper that make sure that the call is not done to often. This help us improve the performance of the application start-up. Also this help to improve activation process after the application Tombstone.
So make sure to validate our Windows Phone 7 application by using a tool like fiddler. This will help you improve the performance and stability of your application.
Almost 4 month have passed since the release on the market of the Windows Phone devices. With now over 8,000 apps, a lot of code have been written. So many controls manufacturer have release controls for Windows Phone 7. Some are free and some not. But in the end the is now a good set of controls available on the market to help the developer to build nice and appealing application.
Silverlight Toolkit for Windows Phone (Free)
Recently, the Silverlight Toolkit for Windows Phone was update. This release provided some new controls and some improvement on the existing controls.
More information: http://www.jeff.wilcox.name/2011/02/feb2011-sl4wptk/
Telerik RadControls for Windows Phone (Paid)
Telerik is also providing some nice controls. Telerik provide nice transition and animation controls. We used some of those controls some of our recent project. They are currently in beta but they are working like RTM product. I had the chance to be in contact with the dev team to help us solving some issue in the beta and i can tell you that the team is really dedicated to provide the best controls.
- Application Frame
- Transition Controls
- many more
Sample App: zune://navigate/?phoneAppID=fd55f526-d6f7-df11-9264-00237de2db9e
Component Art (Paid)
Last week ComponentArt released a version of their Data Vizualisation for Windows phone. This set of controls looks very nice (i didn’t time to test the control, but i will review the controls in a couple of days). If you plan to create a dashboard with some Charts, Gauges, Maps, Gridviews, etc i suggest you to give a look at this set of controls.
Sample App: zune://navigate/?phoneAppID=e13ba532-242b-e011-854c-00237de2db9e
Coding4Fun Tookit (Free)
This open source project provide some nice feature that are not available in any other project. This project is a good complement and a good base for any Windows Phone project.
- About Prompt
- Input Prompt
- Progress Overlay
- Round Button
- Round Toggle Button
- Memory Counter
- TimeSpan Picker
- PhoneHelper for getting data out of the WMAppManifest file
- Boolean to Visibility
- String To Visibility
- Themed Image Converter
- Inversed Theme Image Converter
- Visibility to Boolean
This set of controls provide feature that help to work with MVVM Light. The feature are mostly behind the hood, like Cachine, Messaging, Service and some ui controls.
Download : http://wp7contrib.codeplex.com/
Developing application for Windows Phone 7 can now be done using some controls (without having to create them manually). Those controls provides rich visual and are easy to implement. So creating a portable dashboard for a sale department or a social network application is now an easy task with all those controls. So give it a try, like we did in our projects.
This week it’s the Mobile World Congress. It’s the same event that Microsoft official announced the new Windows Phone 7 to the world. One year later Microsoft use the same event to publish more informations about the upcoming updates.
Currently there is an update scheduled to be release very soon (was supposed to be release at the end of January but was postponed). We should see the update at the beginning of March. This update will provide some updates like:
- Copy & paste (which is now available in latest release of the developer tools)
- Support for CDMA
- some performance improvement
Later this year (maybe in the next 6 month) Microsoft is scheduling a major update. This update is called “Mango” and will provide a lot of nice improvement:
- Internet Explorer 9
- Skydrive Integration
- Multi-Tasking (some information about that feature will be available at MIX11)
- and more
So now that Nokia is now an official partner for the Windows Phone, i can only imagine that this will help the platform to progress. What we see from the Windows Phone is only the top of the iceberg, the future is very interesting. Microsoft is already talking about an integration with the Kinect (see the video).
If you want more information about the latest news on Windows Phone I suggest the following sites: