Why the Virtual Keyboard on the Microsoft Band doesn’t work with Android and iOS

Microsoft Band's Virtual Keyboard

Microsoft Band’s Virtual Keyboard (image from Microsoft)

Someone recently asked why the Microsoft Band Virtual Keyboard only works with Windows Phone 8.1.  I’ve been using mine with my Lumia Icon and didn’t realize that replying to a SMS message only partially works in Android and not at all for iOS.  While there doesn’t appear to be any documentation explain why the functionality is missing from some platforms, I’ve made a semi-educated guess for the reasons.

With the Band, you have three basic ways of replying to an incoming SMS message .  You can send a predefined text message called a “quick reply”.  You can define up to four quick reply messages.  Two are already set up for you: “I’ll call you back” and “I’m in a meeting”.  You can change those two or add two additional through the Microsoft Health App.   They are handy to use when you are in a meeting and need to send a quick response back without having to be that person who plays with his phone during a meeting.

The quick reply messages work with Android and Windows Phone.  In addition to the quick reply messages, with Windows Phone 8.1 you can use a virtual keyboard  or voice dictation on the Band.  Both of which require Windows Phone 8.1.

Voice dictation uses Cortana on Windows Phone 8.1.  You speak into the Band, the audio data is sent to the Phone and Cortana converts it to text and sends it back to the Band.  You can preview the text and then send the reply to the message.  Right now Cortana is Windows Phone 8.1 (and Windows 10) technology.  Microsoft has announced that they are porting it to Android and iOS, but it’s not available yet.  It’s also not known if the Cortana integration on Android and iOS will extend to working with the Band.

The Virtual Keyboard on the Band uses your phone to process your keypresses and swipes into text.  It uses the Word Flow technology in Windows Phone 8.1 to match the swipes to the appropriate word.  To support this on Android, Microsoft would need to port the Word Flow engine to Android.  It’s doable, but probably low on their backlog.

With iOS, we have a different story.  For an app, in this case the Microsoft Health app, to send an SMS message; it uses the SMS messaging API.  This is exposed through the MFMessageComposeViewController class.  The app composes the message using this class and then uses it to invoke the standard SMS composer view comes up.  The user can view or edit the message and then finally tap the send button to actually send the message.

By design, Apple does not allow apps to send SMS messages without the user confirming the message.  This is to prevent apps from spamming your contacts without your consent or knowledge.  There is a way to send messages without tapping anything on the phone, the Apple Watch supports that now.  At this time, that is handled by the Apple messaging app, I don’t think Apple has an API call for 3rd party devices to use.

It would be nice if Apple made a public API to allow wearable devices to send SMS messages, but I don’t see that happening any time soon.  Apple places a higher priority of preventing spam from being sent than allowing 3rd party device access.  Plus opening up directly sending a SMS would help a product that competes with the Apple Watch, and that’s not in Apple’s best interests.

Exporting SMS/MMS messages from Windows Phone 8

Windows Phone Message Backup as displayed in the Windows Store

An annoyance with Windows Phone 8 is the lack of any built in facility to export your text messages.  It’s easy to have the messages backed up, but you can only access them from your phone.

While reading a message thread in the Windows Phone Community forum, I came across a mention of an app for Windows 8 called “Windows Phone Message Backup”.  It’s from Tafidi, and it just works.  You can get it from this link.

You will need to have previously enabled the text message backup on your phone.  For more details on how to enable the message backup, go to the Back Up My Stuff page and scroll down to Text Messages section.

When you run the app, it asks you for the Microsoft account that you use your phone with.  If you have enabled two factor authentication (and you really should do that), create a new app password and use that.

Once it has authenticated under your account, it will download your message history.  This may take a few minutes.  After the messages are downloaded, they will be grouped by the other party in the message.

To export the messages, you will need to select the other party from the list and then right-click on the message thread.  That will open up a toolbar panel that will allow you to export the messages as text or as an image.

Right now for text, the  only text format is supported is ASCII text, but since that format is listed as a choice, I’m assuming that other formats will be a later release.

For image exports, you get a long PNG formatted image of the entire message thread, but without the images.  That’s kind of a big limitation.  You could make screenshots from the app itself, but you would be limited to what fits on the screen.  But that does allow you to capture the images.

So if you need to export SMS messages, this is pretty much the only game in town that works across the carriers.  Different wireless carriers may offer their own tools for accessing the text messages.  I use Verizon Wireless and they have a decent portal that allows you to access messages and also to send and receive them without going through the phone.