Category: Uncategorized

  • Microsoft Band Initial Thoughts

    I received my Band today and have just started setting it up, loading in my Starbucks card and tweaking settings. One thing which is interesting is that the phone doesn’t use GATT Bluetooth LE to expose functionality unlike some other wearables. Instead it has three RfComm services named:-

    • Cargo Service
    • Cargo Service 2
    • Push Service

    Cargo is a code-name for the Microsoft Band and appears in a few places…

    Because the screen is flat it makes the band feel very wide and I have the large size so I can only imagine this is more pronounced in the smaller sizes. I think a portrait orientation for the watch screen would be quite useful…

    I thought the Starbucks integration would be some clever NFC magic but it is simply a 2D barcode displayed on the screen. This could be replicated for any loyalty card or similar provided they have a scanner which can read from a screen (Imager rather than laser scanner).

    The Cortana integration is very slick and is even able to wake your phone and activate Cortana bypassing the lock screen. Whoa that’s a security risk you may think – well if you try and navigate away from Cortana you’ll then get your lock screen.

    I haven’t had a chance to test the UV capabilities but since I’m in Seattle and it’s a dark and rainy November evening I’m not too worried about over-exposure at the moment.

  • Tasks v1.19

    The latest update to Tasks is now available in the Marketplace. This release continues the improvements to the sync experience by providing more resilience in situations where the network drops out during a sync. It also improves the reminders feature in Windows 7.5 and improves the display of reminders for tasks with very long titles.

    http://www.windowsphone.com/en-GB/apps/55fcf880-6b03-e011-9264-00237de2db9e

     

  • Developer Unlock Expiry

    When you’ve developer unlocked your Windows Phone you can merrily deploy and debug on it and everything is great. If you’ve upgraded to Mango you had to run the Unlock tool again but this is fairly painless. What is not obvious is that the developer unlock has a 12 month expiry from when you first register the device and even when you subsequently use the unlock tool on the same device this never gets extended.

    So one day you’ll be developing as normal and get the error “Failed to connect to device as it is developer locked. For details on developer unlock, visit http://go.microsoft.com/fwlink/?LinkId=195284.”. Instictively you launch the developer unlock tool, enter your App Hub credentials and unlock the phone. This completes with no errors but you’ll soon find that it hasn’t helped despite the fact you entered valid credentials and your App Hub account is valid.

    The solution to this problem is to log into App Hub on the web and go to your account profile, select devices and remove the offending device from the list (here you’ll see that the expiry date is shown). After doing this you can run the unlock tool again and successfully unlock the device.

    Microsoft could certainly improve this process in the future by using a more descriptive error message and also by improving the unlock tool so that when you try to unlock a device that has expired it refreshed the registration and provide 12 more months of use (just like the manual process described above does).

    Merry Christmas, and here’s to a wonderful 2012 filled with Windows Phone goodness!

  • Showing Mango Features on Marketplace

    The Windows Phone team have posted to their blog about application updates with a couple of useful points:-

    From October you will again be able to publish updates to your 7.0 apps independently from 7.5 (previously once you had published a Mango update your 7.0 app would be locked). It does mean potentially being in limbo for a month but at least you are not stuck completely with no way of updating a 7.0 app. This is important as it will take some time before many users will have the opportunity of upgrading to Mango.

    When submitting apps there is only one description for both versions of your app so you must describe which features are for Mango only. For the purposes of Screenshots there is now an officially accepted overlay which can be used to indicate Mango-only functionality. You can download a ZIP containing the overlay and examples here:-

    http://create.msdn.com/downloads/?id=882&filename=Marketplace_7.5_Badges.zip

    The full blog post is here:-

    http://windowsteamblog.com/windows_phone/b/wpdev/archive/2011/09/20/submit-windows-phone-7-5-apps-today-update-7-0-apps-in-october.aspx?utm_source=twitterfeed&utm_medium=twitter

  • Working with Marketplace Exported Reports

    When Microsoft refreshed the Windows Phone developer portal in advance of the Mango refresh they added various improvements to reporting, an important one being export to file (XLSX). When you open the exported payout detail reports in Excel and enable editing you’ll see a number of warnings against a couple of columns. This is because the data is formatted as text but Excel recognises that the contents are numbers. In order to use these values in formulas or graphs you’ll need to convert them to numerical values.

    The easiest way I found to do this was to select an empty cell and Copy it, then select the entire columns of “Units Sold” and “Royalty”, right click and select “Paste Special”. From the popup select “Add” as the operation and click “Ok”. Now all your number columns are really numbers (you’ll see the formatting change to right alignment).

  • Need a Windows Phone developer handset?

    Are you a Windows Phone 7 developer in New Zealand? Are you in need of a real Windows Phone device to test and debug your apps on? If so I have a spare Samsung developer handset which is going free to a good home. Shipping is $5 to anywhere in New Zealand. I could ship it internationally but the cost would be higher. Contact me if you are interested. I have only one and it’s first come-first served!

    Update – The phone has now been claimed

     

  • APPA Mundi Tasks 1.9

    The latest version of our Tasks app has now hit Marketplace. This release builds on the improvements from my last blog post:-

    • We now have fixed an issue some users were encountering with synchronising Hotmail tasks in v1.8
    • We now support a wider range of Exchange Server 2003 mailboxes including those with non-standard security policies
    • Thanks to user-feedback we’ve improved the French and German text within the application
    • We’ve changed the timing of how the welcome message pops up in the trial version to avoid navigation issues
    • Based on user feedback we’ve added the option of putting undated tasks at the top or bottom of your To-Do list
    • Since version 1.7 we’ve changed the transition animations between pages to match the built-in applications (obviously this doesn’t come across in the screenshots!)

    We’d like to say thanks for all the great feedback we’ve received from users. We’ll keep listening and adding to the product so keep it coming!

  • Tasks: Coming in v1.7

    This week we released the second in a couple of updates to the Tasks application. We’ve added a large number of features and improved compatibility with a wider range of servers based on user feedback. Let’s look first at compatibility – we now support Exchange 2003 and other ActiveSync 2.5 compatible servers. This includes your Hotmail To-do list! We received feedback that a lot of users still had Exchange 2003, one of the main reasons for this is that this was the last Exchange version to support a 32-bit OS and many people have 32-bit Windows Server 2003 and Small Business Server 2003 machines which they have no immediate plan to replace.

    Trial Version

    The next common piece of feedback was in the functionality of the Trial version. we’ve removed the restriction on the number of Tasks which the application will sync. Because the app used to synchronise the first 10 tasks these were rarely the latest and most useful tasks to have on your phone. The trial app is now limited to run for 7 days to let you evaluate the application.

    New Features and Fixes

    We have improved the logic behind our live tile so that it’s updates should appear in a more timely manner. When it receives an update it also uses your chosen accent colour.

    We’ve made numerous tweaks to the user interface within the application too. We also respect your theme colour throughout the application, and have added some new transition animations between pages which closely match the experience in the built-in Email and Calendar applications which Tasks is designed to complement. We’ve made category editing easier by using a picker control to easily select existing categories as well as support for adding new categories.

    We’ve had support for editing Reminders on the phone in the last couple of versions but we’ve now added reminders within the application. When you launch the application it will display currently due reminders and others will pop up as they become due when you are using the application.

    We’ve added support for completing recurring tasks and the application will show both the completed instance and the next task in the pattern (if applicable).

    Thanks to feedback from several users we’ve also made improvements to the localised text – yes the application supports all Windows Phone languages (US English, UK English, French, German, Italian and Spanish).

    We’ve also made numerous bug fixes and some performance improvements. There were some issues around sorting, specifically where several tasks had blank subjects, these are now resolved.

    Exchange 2010 Synchronisation Fix

    One issue we have encountered can be observed if the app shows “initializing…” and then immediately “synchronization failed” when you try to sync. This seems to be specific to Exchange 2010 and can be resolved by removing the device from your Exchange account using Outlook Web Access and then resetting synchronisation.  From OWA click Options and “See all options…” then select Phone in the left-hand list. You’ll see a list of mobile devices attached to your account. Your Windows Phone will have an entry and the Tasks application will have a separate one. To find the correct device select one and click Details. You can identify Tasks because it will show the user-agent as APPA-Mundi-Tasks/x.x.x.x where x.x.x.x is the version number.

    Once you’ve identified the correct device delete it from the list, log out of OWA and from the Tasks application go to the Settings page and click Reset. The application can now setup a new sync relationship.

  • When Phone Tasks Might Not Work

    The range of Tasks available in the Microsoft.Phone.Tasks namespace call into various system features from your application. In some circumstances these may not work as expected. The most obvious example is the Emulator where not all of the system is implemented. The behaviour will differ depending on the specific task. For example EmailComposeTask on the emulator will display a message that no accounts are setup and of course you cant create these yourself because this functionality is hidden in the emulator. The other situation which can cause tasks to fail is when your device is docked with the Zune software. As a developer there is a tool to get around this when debugging but you must write your software to be aware of this to avoid upsetting users. In Windows Mobile we would have used SystemState.CradlePresent to detect when the device was docked, there isn’t an equivalent property for Windows Phone. Instead you can check the network type. Because we know that the hardware configurations for Windows Phone 7 are quite specific we know that devices will have phone, wifi and USB cable connections. You can detect the network type using the Microsoft.Phone.Net.NetworkInformation.NetworkInterface.NetworkInterfaceType property. There are a lot of possible values in the NetworkInterfaceType enumeration but only a few are relevant:-

    Ethernet – Used for Zune cable connection

    MobileBroadbandCdma

    MobileBroadbandGsm – For phone connections

    Wireless80211 – For WiFi

    So by checking for the value Ethernet we can tell if the device is currently docked. The only caveat is that this property isn’t set immediately when you dock and there can be a few seconds before the connection is established.

     

    Case Study – PhotoChooserTask

    The PhotoChooserTask works on the emulator with a selection of default images. On the phone it will fail if the phone is docked. The Completed event will be raised and a TaskResult of Cancel will be returned – as if the user had cancelled. This simple block of code can be used to wrap your call and handle this situation (for a change a little VB):-

    If Not Microsoft.Phone.Net.NetworkInformation.NetworkInterface.NetworkInterfaceType = Microsoft.Phone.Net.NetworkInformation.NetworkInterfaceType.Ethernet Then
                Dim pct As New Microsoft.Phone.Tasks.PhotoChooserTask
                AddHandler pct.Completed, AddressOf pct_completed
                pct.Show()
    Else
                MessageBox.Show("To view photos, disconnect your phone from the computer", "My Application", MessageBoxButton.OK)
    End If

     

    Task behaviours

    Task Name Emulator Phone (Docked)
    CameraCaptureTask Yes (simulated data) No (Completed returns TaskResult.Cancel)
    EmailAddressChooserTask Yes Yes
    EmailComposeTask Shows error message (no account) Yes
    MarketplaceDetailTask Exception 80070057 No
    MarketplaceHubTask Exception 80070057 No
    MarketplaceReviewTask Exception 80070057 No
    MarketplaceSearchTask Exception 80070057 No
    PhoneCallTask Yes Yes
    PhoneNumberChooserTask Yes Yes
    PhotoChooserTask Yes (Sample data) No (Completed returns TaskResult.Cancel)
    SaveEmailAddressTask Yes Yes
    SavePhoneNumberTask Yes Yes
    SearchTask Yes Yes
    SmsComposeTask Yes Yes
    WebBrowserTask Yes Yes

    The marketplace tasks perform no action and these ones don’t have a Completed event so you don’t get any feedback. You can provide similar logic to the above to warn the user that they can’t use Marketplace functionality when docked, you could also hide any marketplace links from your UI based on the network state.

  • Silverlight for Windows Phone Toolkit–Feb 2011

    The latest release of the Silverlight Toolkit contains a number of fixes and new features including:-

    TiltEffect (previously available separately)

    PerformanceProgressBar (previously available separately)

    Visual Basic Samples

    Major improvements to LongListSelector and Transitions

     

    Go grab the latest release here:-

    http://silverlight.codeplex.com/releases/view/60291