I’m pleased to announce that the Windows Phone SDK 7.1.1 Update is now available for your download; it’s the final version of the CTP we released last month, and enables Windows Phone developers to do two things:
- Develop apps that work well on the new 256 MB devices
- Use the WPSDK 7.1 to develop on machines running Windows 8
While I’ll circle back to these two points in a moment, I’d like to take a moment and highlight what’s actually in this update.
The 7.1.1 Update is really just that – it’s an update to the existing WPSDK: it doesn’t add much in the way of new features to your WPSDK installation; it updates your existing install to do a few new tricks:
- The Visual Studio IDE is patched to enable selection from a list of emulators, and launching it (note that the WPSDK can only support connecting to one at a time, though)
- The Windows Phone [512 MB device] emulator image is updated to use build 8773
- A second, new emulator device image is included, allowing you to emulate running your app on a 256 MB device
- The Microsoft Advertising SDK is updated to the latest version (previously only available as a separate install), which fixes some issues devs were encountering at runtime
- IntelliSense now supports specifying the 512 MB device requirement in your manifest file, should you choose to opt your app out from running on the new 256 MB devices
- Language support is again consistent both in the IDE (the 7.1.1 Update supports all 10 of the WPSDK 7.1 languages) and in the emulator OS (Malay and Indonesian have been added)
Installing the patch is pretty straightforward process, with a standard three-step install process (accept; install; finish). Because the patch contains two virtual OS images (256 MB device image; 512 MB device image), the patch is pretty beefy (weighing in at just under 300 MB) and it can take time to install as it initializes each image as part of the installation. During the virtual image initialization process, each Windows Phone OS device image is booted up and then paused at the point where the OS is ready to accept an app install; while the initialization process adds some pain up front, it saves you lots of time in the long-run as you don’t have to watch the OS boot-up screen every time you start up the emulator to deploy/debug your code.
On my machine, I was looking at the following screen for about 15 minutes:
After you’ve installed the update, the most noticeable change for most folks is you’ll now see a couple nifty entries in your target selection drop-down box:
Selecting one of these will launch the selected emulator, just as you would expect. Something that you may try to do (well, the first thing I did) is launch your app in the 512 MB emulator and then also launch it also in the 256 MB emulator, so that you can compare your WP app running in both emulators, side-by-side, to compare performance; needless to say, running both emulators at the same time doesn’t work.
Running the Windows Phone SDK 7.1 on Windows 8
As Larry discussed earlier this month, the WPSDK 7.1 didn’t run on the Windows 8 Consumer Preview release. The issue involved three elements: an issue with XNA Game Studio, an issue with the Windows Phone emulator, and a requirement for .NET 3.5. The only remaining blocker for folks successfully developing for Windows Phone on Windows 8 was the emulator. I’m happy to report that this patch removes that final roadblock, and enables our mobile developer community to bring their WPSDK with them as they evaluate the new OS.
There are two caveats I should provide around running the WPSDK 7.1.1 on your Windows 8 machine:
- Running the WPSDK 7.1.1 on Windows 8 works, but it is not officially supported until the RTM release of Windows
- You are likely to see a performance degradation in the emulator if you have Hyper-V enabled
That being said, this update goes a long way to making it easier for folks to build apps that target both Windows Phone and Windows 8; the WPSDK 7.1.1 runs quite well side-by-side with Visual Studio ‘11’. Particularly with the Consumer Preview out, the ability to run the IDEs side-by-side has been a major request from our developer community. As you are starting to evaluate your strategy of targeting both platforms, we still continue to believe that code reuse via XAML and C#/VB.NET will continue to be your best strategy; and this side-by-side support should help make your life much easier as you can develop and debug side-by-side, as well. Look for information on this topic from Larry in the coming weeks.
Developing Apps for 256 MB Devices
I won’t drill into this topic too much given it has been covered on this blog and others; not to mention you probably already have a good understanding of this topic already if you installed the CTP.
If you haven’t yet looked what to keep in mind as you tailor your apps for 256 MB devices, here are a couple good starting points:
- Mike Battista’s Optimizing Apps for Lower Cost Devices blog post
- Nokia Dev Wiki’s Best Practice Tips for Delivering Apps to 256 MB Devices article[CRS1]
- Inside Windows Phone episode on building for the Windows Phone 7.5 Refresh
As Todd mentioned a couple weeks ago, these new devices, coupled with the 23 new markets that went live last week, account for a nearly 60% increase in total addressable market for your apps. If you haven’t already returned to the App Hub and opted into the new markets, it’s a great time to do so. Just sayin’…
Other Random Tidbits
Can I update my CTP patch or do I have to reinstall?
Yes, in fact you can update without having to uninstall the CTP! The engineering team tells me that you should be able to install the RTW release of this patch (the one I’m announcing here; RTW being ‘Release to Web’ since these tools don’t ever really go to ‘manufacturing’) either on a pristine install of the WPSDK 7.1 or one that had been previously updated using the CTP release of this update (no need to uninstall the CTP version of the 7.1.1 Update before running the RTW patch).
How will I know if I have it installed? And would I uninstall/repair the Update?
An important note to make about this update is that it is, in fact, an update, and not a full installation. As such, you won’t find it listed in the ‘Add/Remove Programs’ area of your Windows developer machine. To locate the installation, you’ll need to go to the ‘View Installed Updates’ section of your Windows Control Panel (screen shot below, for your convenience).
Once in the Installed Updates section of the Control Panel, you’ll see a very very long list (at least my list is lengthy) of updates that you’ve installed to applications over time. For the WPSDK 7.1.1 update, you’ll find it listed under a variety of headers (because it touches a variety of installed components), but the primary entry will be found under Windows Phone SDK 7.1 (screen shot below again, for your convenience; because I have the English localization, the actual listing is ‘Windows Phone SDK 7.1 – ENU).
It’s also noteworthy to point out that the update’s installation entry uses the KB entry to denote the installation (for English: KB2669191) instead of the actual patch name; and, if you’re comparing notes with me after you’ve installed the 7.1.1 Update for a different locale, you’ll also notice that your KB number is a bit different. Have no fear, everything is good in the world as each patch binary is required to have its own KB entry, and so this is just the way of the world [of patches].
Why is this thing 7.1.1?
Lastly, returning to the ‘what’s in a name’ point; which is invariably the second question I frequently get when discussing this patch. As you look at what is contained in this patch, it really is a patch that updates and improves the capabilities that have previously been delivered in the WPSDK instead of a big release with lots of net-new features. Furthermore, since the OS isn’t incrementing (the OS is still 7.10.8773 under the covers), a couple options had been considered: either the WPSDK 7.1.1 Update and WPSDK 7.1 March 2012 Update. Given the choice between those two options and the feedback we received last year around patch naming (for the WPDT, we released two updates: the Oct 2010 Update and the Jan 2011 Update), we went with WPSDK 7.1.1 Update. We think it clearly communicates what the Update does and it’s relation to the WPSDK 7.1.
All of That Being Said
So, all of that being said, it’s a great update, and well worth the time to download and install. Go grab it, and let us know what you think. If you have any issues, definitely poke your head into the ‘Tools for WP7’ App Hub forum and give our most excellent support guys a holler.