Microsoft just released Beta 2 refresh of Windows Phone Mango developer tools!
The refresh further improves the tools, resolves bugs from previous release and adds some new features.
Most important – registered Windows Phone developers with retail device will get access to Mango updates via invites to Microsoft Connect site which will give them access to Mango for their retail devices!
Also, the release brings some breaking changes which we as developers need to be aware of. Here are the list of some breaking changes:
|Image decoding moved to the background thread||Enables more responsive UI||If background loading of an image is not suitable, change the CreateOptions of the image from BackgroundCreation to DelayCreation in either the XAML or the code-behind.|
|Asynchronous web client request that was generated on a background thread returns to the background thread pool.||Enables complete background processing of downloads and leads to more responsive UI||In code that relies on the response returning on the UI thread, marshal the response using Dispatcher.BeginInvoke|
|The OnCancel override method was removed from the ScheduledTaskAgent class||Remove this method from your application code|
|The MotionReading property types have changed||This change eliminates the dependency between MotionReading, AccelerometerReading, and GyroscopeReading||Code that uses the MotionReading class must change to use the new types and name|
|The Background Transfer Service folder in isolated storage was renamed||This change groups all services that access files in the isolated storage under “Shared”||Change all references from DownloadLocation, UploadLocation, and the source URI of the BackgroundTransferRequest constructor to point to “Shared\Transfers” instead of “Transfers”.|
|Tile data in isolated storage must use the folder Shared\ShellContent||This change groups all services that access files in the isolated storage under “Shared”|
Change all references from BackBackgroundImage and BackgroundImage to point to Shared\ShellContent. For example:
|The ShellTileEnumerator class was removed||The standard IEnumerable<T> interface is all that is needed when using the ShellTile.ActiveTiles||Enumerate ActiveTiles by using the recommended IEnumerable patterns such as for-each|
|Background agents are not launched in the debugger by using the Add and Find methods||The new LaunchForTest method makes it easier to debug background agents||Use the LaunchForTest() method to debug background agents. For example: |
PeriodicTask periodicTask = new PeriodicTask(“TheWorker”);
|Hardware camera button events removed from PhotoCamera class||New CameraButtons static class enables same creating shared event handlers for hardware button events functionality||Application code which uses PhotoCamera’s “OnButtonHalfPress”, “OnButtonFullPress”, and “OnButtonRelease” should use corresponding new events from CameraButtons’ “ShutterKeyHalfPressed”, “ShutterKeyPressed” and “ShutterKeyReleased”. For example: |
//Event is fired when the button is half pressed
//Event is fired when the button is fully pressed
In addition, the Beta 2 adds some new launchers and choosers which will be covered in additional post.
Download Windows Phone Developer Tools Beta 2 here.
Stay tuned to more to come!