Windows Pone Mango–Developer Tools Beta 2 released!

June 29, 2011

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:

Change Improvement Resolution
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:   
BackgroundImage  image = new Uri(“isostore:/Shared/ShellContent/TileBackground.jpg”, UriKind.Absolute)

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”);
periodicTask.Description = “The worker task”;
periodicTask.ExpirationTime = DateTime.Now.AddDays(1);


if (System.Diagnostics.Debugger.IsAttached)    
ScheduledActionService.LaunchForTest(“TheWorker”, TimeSpan.FromSeconds(10));

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
CameraButtons.ShutterKeyHalfPressed += camera_ButtonHalfPress;

//Event is fired when the button is fully pressed
CameraButtons.ShutterKeyPressed += camera_ButtonFullPress;

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!


Add comment
facebook linkedin twitter email

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>


one comment

  1. JimJuly 6, 2011 ב 6:53

    Trying to wrap my head around tiles, isolated storage, and BackBackgroundImage.

    Do you have any examples or links on where/how to save an image via code, and then mack that the back tile background?

    As soon as you use isostore: in the uri, ShellTile.Update throws.

    I’m creating/saving the image using:
    WriteableBitmap wbmp = new WriteableBitmap(200, 200);
    using (var isoStore = IsolatedStorageFile.GetUserStoreForApplication())
    using (var isoFileStream = isoStore.CreateFile(avatarFilenameString))
    wbmp.SaveJpeg(isoFileStream, wbmp.PixelWidth, wbmp.PixelHeight, 0, 100);