I’ve working on my DevTeach Session for SmartPhone development. My plan had been to show the new features of the VS.NET 2005 environment along with general principles of SmartPhone development from an introductory point of view.
My session is geared at getting started, so it was to be here's what you need, here's what you need to watch out for and here are a handful of useful and simple to duplicate examples of some core concepts. I'm just getting started now on the samples, which is pretty late.
The experience has been nothing short of frustrating. Pre-beta 2 I was not even able to get the smart device integration to work at all in VS.NET 2005. It just didn’t work period while the SmartPhone SDK for 2003 worked OK. So I got a REALLY late start to even start looking at a working environment.
With Beta 2 and a clean install on my laptop (but not in VPC) I finally managed to the get device support to work and I’m actually able to build SmartPhone applications now. Unfortunately there are still major issues with the new emulator, that I have been struggling with.
The new SmartPhone emulator in VS.NET 2005 is supposed to be a vast improvement over the previous version emulator in terms of ease of deployment and speed. Unfortunately in the current state of beta I can’t say that this is true. The new emulator is very, very flaky, much slower than the old and an immense resource hog.
The main issue that’s giving me trouble is that the Emulator does not want to connect back consistently to the desktop. I’ve set up the emulator for a Network Card net connection and configured IE to use my Work Connection (which are the two key things that have to be set to get Internet Connectivity to work). My Internet Connection works perfectly albeit very slowly, but I cannot connect back to the Desktop to access a Web Service or Web page.
Which of course is a major handicap while debugging. I had this somewhat working yesterday, where if I configured the connection settings and immediately browsed I got a connection to the Desktop. Leave the emulator sitting for a few minutes and it would no longer work. Once it doesn’t work I have to shut down the emulator and restart it and then it works again for a few minutes.
Later yesterday I installed ActiveSync 4.0 which is required in order to deploy to a live device and now I can’t get a connection to the desktop from the browser at all. Oddly enough though my Web Service client application CAN connect to the desktop.
Finally last night I had enough and decided to just work on my demos in VS.NET 2003, which in this case works better anyway as I can use and properly see the OpenNETCF framework components. These components are pretty much a must have if you do any device development, which provide a lot of functionality that really should have been part of the core framework in the first place.
Going back to 1.1 isn’t a big deal for SmartPhone development at least. SmartPhone hasn’t rev’d to version 2.0 of the framework so there’s not much that has actually changed for SmartPhone development with VS.NET 2005. The main improvements center around the designer and the Device Emulator and Emulator Manager. One really nice feature of the Emulator Manager is the ability to Cradle and Uncradle the device so you can actually use ActiveSync with the Emulator.
So, as it stands this has been a huge timesink. After several days of just screwing around with environment settings and getting basic code to run I’m finally ready to put something working together.
Hopefully I can share some of my mis-tracks at the DevTeach session so you can be more productive right of the bat <g>…