Preview 12

This preview has a new shared runtime. To ensure you are using it, you will need to delete the old shared runtime from your emulator/device:

Settings -> Applications -> Manage Applications -> MonoDroid Runtime -> Uninstall

The new runtime will be deployed to the device the next time an application is deployed.

General Enhancements

Garbage Collection

The Garbage Collector (GC) is back and better than ever. It has been rewritten from the ground up to be able to accurately track and dispose .Net and Java objects.

Please file bugs if you find issues with things not getting properly collected or things getting collected when they shouldn't.


The API produced from Listeners has been refined. We now follow the approach from Monotouch regarding listeners with non-void callbacks. Instead of EventHandler<EventArgs>, we generate strongly typed delegate signatures, and the SetListener methods are used to produce properties instead of events. On example:

public delegate bool KeyHandler (Android.Views.View v, int keyCode, Android.Views.KeyEvent e);

public Android.Views.View.KeyHandler KeyPress { get; set; }

Expect more refinements here as we expand the usage to multi-callback listeners, and method/ctor overloads for those members exposing listeners.

Visual Studio Plugin Enhancements

Default Device

If you generally only test on one emulator/device, you can set this as the default device in Tools->Options->MonoDroid, so you don't need to select it on every run/debug.

Additional Profiles

We now ship Android 1.6 and 2.1 profiles so you can target them and get the proper IntelliSense.

Bug Fixes

666456 monodroid.exe throws NullReferenceException from Mono.Linker.Annotations.GetAction() when a class library is referenced
632510 Enhancement: Allow Default Device to be set
666655 framework versions are set incorrectly for VS2010
668730 MonoDroidFlavorProject.GetFile is returning E_FAIL instead of sending it on to the inner hierarchy
655342 System.InvalidOperationException When Inheriting From IntentService
666280 [aresgen] Resource variants need to be renamed as well.
666461 Log.Debug() doesn't seem to be working in P11
648893 EditText.Text.ToString() doesn't give you the contents of the text field
658698 System.MissingMethodException: No constructor found for **classname**
664986 Android.Resource Types incorrectly cased / transformed
666149 System.Xml.XmlDocument.SelectSingleNode throws System.TypeInitializationException
667073 NotificationManager.Get() would be nice
667451 HelloLinearLayout Tutorial inaccurate
667520 AlarmManager.FromContext(...) needed...
667523 Cannot build Monodroid project in Visual Studio - missing AndroidManifest.xml
668123 [MSBuild] Clean doesn't Clean
657820 ReferenceTable overflow (max=512) scrolling GridView at GetView()
667055 Can't Add .Net References to an Monodroid App in P11



Xamarin Workbook

If it's not already installed, install the Xamarin Workbooks app first. The workbook file should download automatically, but if it doesn't, just click to start the workbook download manually.