Windows Phone 7

New Windows Phone 8. Something to love, something to hate.

Given in to phone envy, Alun?

No, not really – although I will say it was interesting to be around so many Windows Phone 8 users at the Microsoft MVP Summit last week.

But the HTC HD7 I originally bought, which spent a half-hour in a hot-tub (syncing), then a week in a bucket of Damp-Rid, then a year (working) in the hands of my teenaged son, finally bit the dust in the middle of the MVP Summit.

Says the storage card is corrupted.

So, I can’t afford the time to take it apart, mess with the drive and possibly even discover that it is truly dead.

I have to take advantage of the “upgrade” pricing that comes with committing to another year of service from T-Mobile, and upgrade him to a Windows Phone 8 system.

Then my wife gets interested in the phone, and before you know it, we’re all getting new phones.

No problems, then – everything’s good!

Yes and no.

It’s always good to get a new phone, sure, and to enjoy the fun of new features. But you’ve got to reinstall, and in some cases, re-buy (my wife went from a Blackberry to an HTC 8X) all your apps. And the data is all gone. High-scores, messages, settings, there’s no good path to take data from a WP7 to a WP8, let alone from a Blackberry to a WP8.

Some apps, of course, save their data to the cloud – all my OneNote files came with me.

It’s not so bad in the future, because there’s apparently a better upgrade path from WP8 to other WP8 phones. Messages get backed up, as well as your app list and settings.

How’d you get your apps back, then?

The interface to reinstall has improved over the years, from the first version, in which I only found the ability to restore apps installed directly from the Zune software; to a later version, which required a bunch of different click-through pages for each app you want to reinstall. Now, the reinstall interface is so much easier. Just go to the Windows Phone "Purchase History” page, scroll down the list of apps and click “Reinstall” on each app you want to go onto your new phone. No clicking through, no re-checking boxes about allowing location, etc.

Despite the name “Purchase History”, this page lists even those apps which I downloaded for free, whether as Trial software, or because the software was free in the first place.

That’s the good part, and that’s how I got some of my apps back. But the bad part is that this list doesn’t contain all of my free apps, just a limited, and somewhat random, selection. For instance, although it lists Amazon Fresh, the Purchase History page is missing Amazon Kindle, and Amazon Mobile, as well as the majority of my other free apps. This is not good customer experience, and if I was the author of any of the apps that aren’t easily reinstallable, I’d probably raise a big stink.

So now, I have to go one by one through my old phone’s list of apps, finding out which aren’t on my new phone, searching for them in the store, finding them in the search results, clicking on them, then clicking “Reinstall” (the store knows I have already installed them before). This makes me more likely to not reinstall these apps, and since the majority of these are ad-funded apps, whose authors won’t make a dime unless I run them, I think that app developers have a strong incentive to ask Microsoft to fix this behaviour.

And how’s the podcast experience?

Oh, you knew that I’d have something to say about that. Well, this post’s long enough already, so I’ll leave that until next time. For now, I have to say I do like my new phone, but I’m really tired of this whole update process already.

Removing capabilities from my first Windows Phone app

So, I thought I’d write a Windows Phone app using Visual Studio 2012 the other day. Just a simple little thing, to help me solve my son’s algebra homework without getting into the same binds he does (failure to copy correctly, fumbled arithmetic, you know the thing…)


And I run into my first problem.


The app uses no phone capabilities worth advertising – you know, things like the choice to track your location, so that the app’s install will ask the user “do you want to allow this app to have access to your location”, and you say either “allow”, or “why the hell does a flashlight application need to know where I am?”


And yet, when I run the “Automated Tests” under the Store Test Kit, I get the following:


image


If you can’t read the image, or you’re searching for this in Google, I’ll tell you that it wants me to know that it’s validated all the capabilities I’m using, and has noticed that I’m using ID_CAP_MEDIALIB and ID_CAP_NETWORKING.


Weird, because I don’t do any networking, and I don’t access any of the phone user’s media.


It’s just my son and me using the app right now, but I can picture some paranoid person wondering why I need access to their media library or networking simply so I can solve the occasional simultaneous or quadratic equation!


Quite frankly, I was mystified, too. Did a bit of searching across the interWebs, but all the articles I found said the same thing – the MediaLib capability must be because you’re using something with the word “Radio” or “Media” in it somewhere (I’m not), and the Networking capability because you’re doing something across the network. I removed all the “using System.Net” lines from all of my code files, but still no joy.


[A quick tip: to find all these rules yourself, look in C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v7.1\Tools\Marketplace for the file “rules.xml”, which will tell you what the capability detection code is looking for]


Nothing in my own code seemed to be actually causing this, so I took a step back and had a look at other references being included by the compiler by default.


System.Net seemed to be an obvious offender, so I removed that, to no effect (quite right, too, because it isn’t the offender, and doesn’t, on its own, cause ID_CAP_NETWORKING to be detected).


No, here’s the culprit:


image


Microsoft.Expression.Interactions – what on earth is that doing there?


It’s not something I remember including, and quite honestly, when I went looking for it, I’m disappointed to find that it’s associated with Expression Blend, not something I’ve actually used EVER. [Maybe I should, but that’s a topic for another time].


Removing this reference and rebuilding, the XAP tests clear of all capabilities. Which is nice.


So, now I have my “Big Algebra” app in beta test, and it doesn’t tell the user that it’s going to need their media library or their network connection – because it’s not going to need them!

Could Google prompt Microsoft to provide easier syncing?

As a Windows Phone user, and trying to persuade my wife to one day become one (instead of the Blackberry she totes around), I’m constantly stopped by the prospect that there is no way to sync my calendar and contacts without going through some online service.

This is a very strange situation, because even Apple’s iPhone can apparently synchronise Outlook contacts and calendar entries over the USB connection.

Microsoft’s answer to date has always been that we should rent or borrow an Exchange Server of some sort, push our calendar and contact details to that server, and then fetch them down later. Not exactly secure (you’re sharing a high-value target, possibly operated by a company with whom you compete, as your mail server), and free under generally limited circumstances.

Maybe I’m too paranoid, but I don’t really fancy that level of reliance on someone else’s service to host and protect information that, up until now, I’ve held physically on only a couple of devices. So, I make do without my contacts on my phone, and I rarely have a firm idea of my calendar commitments until I’m back at home base.

There are solutions, of course, because there always are – and they rely, essentially, on setting up something that pretends to be Exchange on your local WiFi.

Not exactly secure, and not exactly cheap. Certainly not free.

Then comes the bad news – Google has decided to close down Exchange connectivity to GMail, so that Windows Phones will not be able to use GMail any more. I’m sure that’s not the reason they give in press releases, but it seems likely that’s at least seen as a handy side-benefit. [Does this mean Google sees a threat from Windows Phone?]

Rather uncharacteristically, but in a welcome move, Microsoft turned around and, instead of turning it into a raging war of words, said that if they couldn’t get at GMail that way any more, they’d support one of the other ways of getting at GMail – this means that they’ll start supporting IMAP and the Calendar and Contact sync formats supported by GMail.

That changes everything

Because now, you don’t have to find an Exchange lookalike in order to sync locally – all you need is IMAP support, and support for the two formats, CardDAV and CalDAV.

These are simpler formats, and more widely documented and supported, than the Exchange protocols previously insisted upon by Microsoft. I can see that when they open up IMAP support, a lot of Windows Phone users will be opened up to their email accounts, and when CardDAV and CalDAV are added, we should see very quickly some solutions that allow for syncing of contacts and calendar while connected by USB.

2013 should be a good year to be a Windows Phone user.

And yes, I’m still waiting for my carrier to push Windows Phone 7.8.

Another encouraging Mango update sign

Microsoft released an update to the Zune software. Of course, this hasn’t fixed any of my usual complaints about the inability to properly handle Podcasts, sorting and managing them, but it does make me convinced that we’re moving right along in the process to release a new version of the Windows Phone 7 OS.

To get your Zune software update, simply open your existing version of Zune, select Settings (in very small font on the top, towards the right-hand side), then under “Software” on the left, you’ll find an item “General”. Select this, and scroll the right-hand side until you see “Software updates” and “Check for updates” come into view. Click on “Check for updates”, and follow the instructions from there.

image

Encouraging Mango update signs for HTC HD7

I woke up this morning to a message on my phone that there is an update available.

This is hugely exciting, because I want the new “Mango” update that Microsoft released to manufacturing a week or two ago.

Something tells me that this probably isn’t Mango itself, but some pre-Mango update required by the hardware manufacturer to address driver requirements of the new version, which unlocks access to things like the compass and camera. Using devices in modes they previously weren’t operating in tends to reveal bugs in drivers, and so I am guessing that every phone will likely need a pre-Mango update to get its drivers and underlying SDKs / APIs into shape.

Here’s the image of the update trying to apply:

image

So, did any of you readers get a nice “gift” on your phone this morning? Is it the full Mango, or just a pre-Mango fix set?

Sadly, my update failed, with an error 0x801812c1, but a handy search on the Interwebs directed me to this KB article, which told me how to address this issue. I’m hoping this will now allow the update to be applied correctly.

Windows Phone 7 impressions

I’ve had my new phone – an HTC HD7 “Schubert” for nearly four months now.

For the most part, I’m enjoying it – as a phone, it works fine. I’m still trying to get my fingers and thumbs to thump the keyboard in the right way to avoid making spelling mistakes. But that’s not too bad.

The screen controls – dragging, flicking, pinching and tapping my way to multi-touch success – work really intuitively, and I love the fact that I can take a picture within seconds of pulling the phone out of my pocket, while the iPhone guys are still fumbling through their unlock code.

Backing up / Updating

Updating is handled well, IMHO, with a link to your PC required, as much so that you can have a full backup taken of your phone, as it is to do with increasing the speed of the overall operation. If you’ve done like I have, and filled your phone with podcasts, video and music, this can take some considerable time to back up, which makes the update process perhaps a little too long. A future version of this might choose to ignore backing up those items on the phone which can be restored from the Collection.

I was thoroughly impressed with the speed by which the certificate update was shipped through T-Mobile. Obviously, with each carrier able to stop and delay any update Microsoft issues, this could become an issue in future. If I can’t rely on mobile devices within my organisation being patched against known vulnerabilities, I can’t comfortably allow them access to the network. Of course, you could level the same accusation against the iPhone in spades – after all, with all the jailbreaking that goes on with that device, what you have are a pile of modified systems, not managed or secured, and able to lie convincingly about security policies they have implemented.

Application selection

Much like other phones, it’s difficult to filter the good from the dross. Microsoft selects some good “Featured” apps, but I’d also like to see some means of better filtering on the app selection. Writing one reader program, and putting a hundred free texts into it, does not mean you’ve published a hundred apps. This is especially true for local TV News apps, Realtor apps, transport navigation apps, indexes of lawyers, blog feeds – yeah, really it’s especially true of everything, if that was ever a meaningful thing to say.

Having said that, there’s all sorts of cool apps available for the phone, and I’m sure that for all the apps I’ve found, there are equivalents on other phones, and that there are numerous exclusive apps only for this phone or that. I can say that I have not been disappointed by the selection of apps on my phone. I don’t find some niche apps, but then I don’t find those for the other phones either.

All the apps that you’d expect to find are here. Even Angry Birds now, which apparently have to be present for a phone to be considered complete. Of course, Chicks ‘n’ Vixens is available for the Windows Phone 7, but not for other platforms, so that’s a win.

Navigation

Once you’ve installed a few apps, the ability to ‘pin’ a number to the main menu helps enormously, but even so, it can be a trifle daunting to make your way through the single list of apps that you get when you wander off the main menu. It’d be nice to have the ability to group apps, and maybe to copy the Music folder’s ability to navigate by the initial letter of the album.

In its favour, however, the flick and tap technique is so intuitive and easy to use that this is almost not a problem at all. But that’s a very weak plus, compared to the effort it should take to implement a grouping / filtering feature.

Bluetooth

It’s an excellent feature, being able to use my Bluetooth headset instead of plugging into the phone. Sadly, it’s not exactly complete. I can’t tell you how startled I was to open up a YouTube video and find that, instead of privately broadcasting into my ears, it was actually making lots of noise that everyone else in the room (apart from me) could hear.

I thought that was just YouTube, because their app is quite frankly one of the crappiest implementations possible. I’d recommend the HTC YouTube app in preference, if you have an HTC phone.

Sadly, no. The phone does not transmit the audio from playing videos over Bluetooth to a headset. Perhaps this was intended to be a safety feature, so that you can’t try and watch a video while driving, but I think it’s important to recognise that many of us have Bluetooth headsets that we like to use while commuting. So, please, enable Bluetooth headsets for watching video, and don’t think about disabling it based on speed. Like I said, I use my phone to watch videos and listen to radio podcasts while I’m riding the bus.

I don’t know, perhaps the onus should be on the car driver to ensure the safety of himself, his passengers, and everyone else on the road. Someone who’ll try to watch a video while driving will also be texting while driving, shaving, reading a newspaper, applying makeup, solving a Rubik’s cube, etc. Yes, I’ve seen all this out the window of the bus – I even have a really blurry picture of the guy solving the Rubik’s cube, but focusing through two windows while going at speed isn’t the phone’s strong point.

Podcasts

Still where I spend a lot of my time.

Hand-made podcasts (not subscribed from a URL) are still supported like arse, and need some work. Think about audio books, radio shows from CD, ripped to MP3, etc.

No graphics, no navigation other than “scroll up and down”, no consideration to the thought that a podcast might be longer than about twenty characters.

Sorting of podcasts in the phone is in a different order from their sorting in the Zune software, so you can’t reasonably manage the relationship between your collection and the phone.

And once you have a podcast of several episodes, it is often (almost always) out of order. No respect for Track #, Part of Set or other ID3 tags that would allow the Zune software on the phone to figure out what order to play episodes in. My absolute favourite is when a podcast is listed in exactly reverse order.

In the same vein, it’d be really nice if you could cue up (or queue up) multiple podcasts to play one after another. You could call it, oh, I don’t know, a list for playing – List O’ Play, perhaps. I’m sure Microsoft could come up with a simpler term than that, if they were to only implement the feature. On a long journey, I’d like to be able to say “I want to listen to this episode, then that one, then this one over here”, and then put the phone back into my pocket, while I sit back and listen.

It’s clear that Microsoft doesn’t have a use-case around podcasts for the Zune or the Windows Phone 7, and that they don’t have any staff who actively use podcasts, or audio books, etc. While I appreciate that the goal with the Zune was to provide a music-listening experience, podcasts and audio books are also important ways to use a device that plays and manages audio. I’d like to see that taken into consideration.

Migrating from one Windows Phone 7 to another

My original WP7 device (an HTC HD7, aka “Schubert”) has become a vampire.

This started just after I applied the NoDo update, and while I was traveling to the UK, although I think both of these events are unrelated. The phone was less than two weeks old when this behaviour started.

Every battery I stick in the phone gets drained, and although the phone pops up the requisite “I’m charging your battery” icon, the battery never gets charged.

So I’ve asked for a replacement phone. That in itself was a pain.

Despite the words “T-Mobile” on the box, on the phone, and T-Mobile requiring I sign up for a 2-year contract, T-Mobile won’t service the replacement – or if they will (and they seem unclear on the idea), they can’t guarantee I won’t get a refurb.

So, I go back to Amazon Wireless, where I bought the phone originally.

Perfect behaviour from them, as expected – a new phone is shipped immediately to me, and I get to spend a little time with the two phones as I transfer data to and fro.

Bizarrely, I have to charge a battery in the new phone in order to be able to use the old phone at all. I can’t even drive it purely from the mains cable.

And now I have to figure out how to get my phone information onto the new phone.

Outlook

Outlook is the easiest one – because it only hooks into Exchange, all I have to do is provide my new phone with the account details (email address and password), and I have all my email transferred.

People

People come across fairly easily too – either from Outlook or Windows Live, or by going to the Settings menu, sliding to Applications, then selecting People, from which you can “import SIM contacts”.

Applications and settings

Applications that I’ve bought through the Zune software come across immediately. Applications that I bought through the phone, they don’t come across at all. Fortunately, I hadn’t actually purchased anything at that point, so I only had to deal with getting the free apps. Nor could I persuade the Zune software to download those apps that I had purchased through the phone, even though they clearly weren’t on my new phone.

Of course, all the settings in those applications – high scores, achievements, account settings, etc – not able to be ported over. Rather irritating, really. This portion of setting up the new phone took the most time of all.

Music, videos and pictures

The Zune software does a credible job of allowing you to copy information out of one phone and into your collection, and then from your collection back into the phone. I’ve written before about how awkward the Zune software is with my Podcasts, and this experience doesn’t really improve on that in any way.

Overall

Overall, it’s fairly certain that the use-case of having to move from one phone to another is not considered by Microsoft to be a significantly common requirement. I certainly hope I don’t have to do this again.

But I do wonder if there could be some form of standard for migrating settings and purchased apps – this was a tedious process in all, as I went through re-finding all the apps I had installed, and dealing with the Zune software’s reluctance to fetch applications that had already been installed on another phone.

Those apps that were easy to move over, it seemed more as an accident than good design, as these apps are based around storing their data off the phone. I’d like to see developers think about deliberately surprising their users with good behaviour, instead.