MonoTouch 5.2 is Here!

Build Great iOS Apps in C#

We’re very proud to announce the availability of MonoTouch 5.2. This release represents months of improvements, with over 300 new features, bugfixes, and enhancements. This is without question the best release of MonoTouch to date.

Here’s a quick rundown of some of the new features in MonoTouch 5.2.

Faster and easier creation of iPhone/iPad Dialogs

MonoTouch.Dialog is a new API that allows developers to create HIG-compliant native iOS screens and dialog boxes and to show table-based information easily. It removes the burden of creating callbacks, data sources and delegate implementation to render tables. MonoTouch.Dialog comes with a range of custom cell renderers that vastly reduce the time it takes to build complex screens and you can even create user interfaces dynamically on demand from JSON data served up online! You can learn more in our MonoTouch.Dialog tutorial and you can also browse the online API documentation.

Memory Profiler

The new MonoTouch memory profiler enables you to identify memory usage hotspots and fix them quickly, tracking the memory usage of managed objects, showing which objects are still referenced, and who is referencing them.

New Garbage Collection Engine

This version of MonoTouch also includes Mono’s new generational garbage collector. You can opt into this new garbage collector by selecting “SGen” as one of the options in your build settings. For certain apps, this can lead to lower memory usage and better performance.

On-device unit testing

Ensure that your app is ready to release with our built-in unit testing framework for running unit tests on both the iOS simulator and your device. You can run your tests manually, or automate them with Instruments. Check out our tutorial on writing unit tests for MonoTouch for more information.

New Libraries

From Mono, we brought the System.Numerics library that brings the Complex and Big Integer data types as well as support for Memory Mapped IO.

But wait, there’s more…

MonoTouch 5.2 also includes more than 300 customer requested enhancements that make it easier to develop great iOS applications. See a full listing of new features and capabilities here.

MonoTouch 5.2 is available immediately to all MonoTouch customers currently within their annual subscription period; just run MonoDevelop and select the Check for Updates menu item.

For complete product information about MonoTouch, and to download a free trial, visit

To see example apps built with Xamarin technology, visit:


First seminar is up on YouTube!

Thanks for everyone who joined us for the first Xamarin Seminar, I hope you enjoyed watching it as much as we enjoyed talking about CoreGraphics. The first Xamarin Seminar is over and done with, but it doesn’t stop there! Sign up for our February Seminars where we will be covering these topics on the following dates;

  • Top 5 features of Ice Cream Sandwich with Mono for Android 4.0 with Mike Bluestein – Thursday 9th February 2012 at 11am EST
  • Third party libraries in MonoTouch and Mono for Android with James Clancey – Thursday 23rd February 2012 at 11am EST

Register for both at

As promised, we uploaded the “Getting Started with CoreGraphics” seminar that Mike Bluestein presented to us, you can watch this below or watch the video on our YouTube channel –

We also put the slides up on SlideShare for your viewing pleasure;

The code that was shown in two of the samples during the presentation are up on our GitHub account:

We are excited to see you at the next seminar on the 9th Feburary and don’t forget to give us your feedback on any of the Xamarin Seminars we create –

Chris Hardy

Introducing the Xamarin Seminars

Xaminar Logo

This week will see our first Xamarin Seminar (or what we sometimes like to call a “Xaminar”).

The Xamarin Seminars will be online presentations, every two weeks, to learn about cool things you can do with MonoTouch and Mono for Android.  Each session will feature a short, 20-30 minute presentation from a Xamarin engineer, or a member of our community, followed by a live Q&A session where you can get your questions answered. If you can’t make the live presentation, everything will be archived on YouTube.

The first seminar is Getting Started with CoreGraphics, presented by Mike Bluestein.  Mike has been an active member of the community since MonoTouch launched, and recently joined Xamarin’s excellent documentation team. He’ll show you how to get to grips with creating 2D graphics and modify PDF files on the fly within your MonoTouch applications.

The session will be happening on Thursday 26th January 2012 at 11am EST (4pm UTC).  If you attend live, bring your questions to the short Q&A at the end, if you can’t make it, don’t worry – Xaminars will be recorded and uploaded onto our YouTube channel –

Register via GoToWebinar (you can even join us on your iPhone, iPad or Android phone with their GoToMeeting app) for the first Xaminar from this URL here:

We have a couple of additional sessions planned as well, so mark your calendars:

  • Thursday 9th February 2012 at 11am EST – Top 5 features of Ice Cream Sandwich with Mono for Android 4.0 with Mike Bluestein
  • Thursday 23rd February 2012 at 11am EST – Third party libraries in MonoTouch and Mono for Android with James Clancey

And in other news… Tweet! Tweet!

We’ve updated our Twitter address to @xamarinhq.  Make sure you follow us!   Of course, we’ll be tweeting out before Xamarin Seminars to make sure you don’t miss them.  And following @xamarinhq is a great way to stay up to date on the newest news about new features for MonoTouch and Mono for Android.  We have some news there, too.  Stay tuned!

Chris Hardy

Cross platform Contacts API

We have released a new preview of the Xamarin.Mobile API.

We have now introduced a cross-platform Contact API that gives developers access to the phone’s address book. This is what our stack looks like with the latest preview:

Download the XamarinMobileApiPreview.Zip and check out the updated Xamarin.Mobile API documentation.

This release contains MonoTouch and Mono for Android bindings, a future version will ship will add Windows Phone 7 support.

Help us plan what should be our next feature by filing out our API survey.

Holiday Season Beta Packages

To ensure that developers everywhere get the most out of their upcoming holidays, we have released to our Beta channel new versions of MonoTouch, MonoDevelop and Mono.

You can pick and choose which components you want to try out, they can be installed independently of each other, and will allow you to try out different things. What follows will give you an overview of what you can expect in each one of the betas.

The Tastiest Treat

The tastiest of the treats is the Mono beta release. This beta release contains an incremental update to Mono (2.10.7) and also a completely new Gtk+ stack.

The new Gtk+ stack was developed by a Lanedo/Xamarin collaboration and fixes hundreds of rendering glitches and usability problems that have plagued MonoDevelop for years. Lanedo is a company that specializes in Gtk+ and have among their staff some of the key developers in Gtk+ and with their expertise they have vastly improved the MacOS port of Gtk+ and fixed many of the bugs that our users have filed over the past few months.

The Gtk+ improvements are not limited to bug fixes and glitch fixing. Lanedo has also implemented Smooth Scrolling for our Lion users.

We are putting this on the Beta channel because we want to gather your feedback and fix any major issues that might have escaped our testing process before we make this the default.


The MonoTouch 5.1.1 release has been updated to the latest version of MonoTouch.Dialog, added System.IO.MemoryMappedFiles (due to a build error, we did not ship it in 5.1.0) and comes with key components that will be unlocked by the next stable release of MonoDevelop next week (stay tuned for these changes!)

MonoDevelop Beta

This is truly a beta, we are using the Beta channel of MonoDevelop to allow users to try out the new code-completion engine of MonoDevelop. This new codecompletion engine has been written entirely on top of Mono’s Compiler as a Service and should be more precise, handle more scenarios and provide better completions.

Mono for Android 4.0 is Here!

Thousands of new API’s, tons of great new features, Ice Cream Sandwich, Honeycomb — There is a lot to get excited about in Mono for Android 4.0!

To learn more, check out our tutorials for using Mono for Android.

Ice Cream Sandwich

Start building apps with access to all kinds of new features found in the latest version of Android: Ice Cream Sandwich.

Easy To Install

Getting started with Android can be time consuming, but the Mono for Android installer will have you up and running with just a few clicks.

Fasters Build, Smaller Apps

With builds that are 40% faster, you spend less time waiting and spend more time creating awesome apps. And with executables up to 70% smaller, your users spend less time downloading, too.

Brand New Tutorials

We’ve released a brand new set of Getting Started Tutorials to get you up and going with Mono for Android as quickly as possible.

Great Tablet Apps

Mono for Android 4.0 adds support for all of the new tablet-specific widgets and APIs that were introduced in Ice Cream Sandwich and Honeycomb.

Google Maps

Integrate Google Maps functionality into your apps easier than ever before with newly bound APIs.

Visual Studio

Mono for Android works with Visual Studio so you don’t have to change IDE. Or, you can use our full-featured MonoDevelop IDE.

If you already have Mono for Android, simply launch MonoDevelop or Visual Studio and you will be prompted to update – it’s that easy!

If not, you can download a trial of Mono for Android.

You can read the full press release at

Black Friday Sale!

You don’t have to risk life and limb braving the crowds for an amazing deal in the post-Thanksgiving sales madness.  Xamarin has a special promotion to reward developers committed to mobile hacking this holiday weekend. That means you!

Xamarin invites you to celebrate the season by building new and inspiring apps to share with the world. And, in the spirit of the holidays, we want to share the joy of MonoTouch and Mono For Android with your friends. That’s why, between now and Sunday, we invite you to tweet Xamarin for huge black friday savings. Just follow the link to post a message about Xamarin’s black friday promotion from your Twitter account, and you will be redirected to awesome savings.

To take advantage of this spectacular deal, just visit

Don’t be late: this offer is only good while supplies last!

Introducing the Xamarin Mobile API

With both MonoTouch and Mono for Android we have chosen to expose the native platform APIs to C# developer so they can take advantage of all the unique features that each platform has to offer. This means that Android developers can create applications that interact with the system in the same ways that a Java app would do, while taking advantage of C# and the .NET class libraries. On iOS this means that developers can consume iOS-specific features like CoreAnimation, CoreImage and program directly against the UIKit API to get the most out of the native platform:

Current Stack of MonoTouch APIs

The above approach allows developers to get the most out of the underlying platform. For this to work beyond a single platform, developers normally split their code along the lines of the components that must deal with the platform specific APIs, mostly the UI elements, and the components that only require the .NET Base Class Libraries (BCL). Usually the core application or the business logic goes into a reusable library and then multiple front-ends are created, one for iPhone, one for Android and even ASP.NET and WP7 UIs can be built on top of it.

But often developers find that many other services that are common across mobile platforms are not exposed by the .NET BCL. This makes the effort of sharing code more cumbersome than it should be. Developers resort to creating their own platform abstractions, or designing pluggable architectures just to get access to the system address book, the phone’s GPS, the compass, the accelerometer, the notification service or the system calendar.

To solve this problem, we are introducing Xamarin.Mobile. This is a library that runs on iPhone, Android and Windows Phone 7 which abstracts the underlying functionality and exposes a common API that developers can built against:

Xamarin Mobile Stack

Today we are launching a preview of the Xamarin.Mobile library. This first version contains our cross platform location APIs for both Mono for Android and MonoTouch (Windows Phone 7 will be added in an upcoming release). You can download the binaries here.

We are running a survey to better understand which are the most important APIs and platforms for our community.

If you want to send us feedback or report bugs, please File a Bug Report in our bug tracking system.

MonoTouch Beta Release

We have just released to the Beta channels the first beta for our upcoming MonoTouch 5.2 release.

The MonoTouch 5.1 Beta contains the following features:

  • The MonoTouch.Dialog library is now part of MonoTouch. This allows developers to build applications in a fraction of the time.
  • Unit testing framework Touch.Unit to create unit tests for your MonoTouch applications.
  • System.Numerics library that contains BigInt and Complex data types.
  • System.IO.MemoryMappedFiles
  • New MapKit APIs
  • Our Generation Collector works.
  • Linker Improvements:
  • Parallel LINQ preview
    • Notice that there are some limitations due to Generics that we will be improving on future releases

We are very excited about making MonoTouch.Dialog part of this release. To ensure compatibility, we renamed this assembly to “MonoTouch.Dialog-1”, this will avoid any conflicts with existing users of the library. This library will continue to be developed as an open source library, and regular updates will be added to MonoTouch.

With MonoTouch.Dialog, you can build UIs in minutes. For example this entire UI:

Was created with this code:

return new RootElement ("Settings") {
    new Section (){
        new BooleanElement ("Airplane Mode", false),
        new RootElement ("Notifications", 0, 0) {
            new Section (null, "Turn off Notifications to disable Sounds\n" +
                     "Alerts and Home Screen Badges for the\napplications below."){
                new BooleanElement ("Notifications", false)
    new Section (){
        CreateSoundSection (),
        new RootElement ("Brightness"){
            new Section (){
                new FloatElement (null, null, 0.5f),
                new BooleanElement ("Auto-brightness", false),
        new RootElement ("Wallpaper"){
            new Section (){
                new ImageElement ("flowers.png"),
                new ImageElement ("sand.png"),
                new ImageElement ("sky.png")
    new Section () {
        new EntryElement ("Login", "Your login name", "miguel"),
        new EntryElement ("Password", "Your password", "password", true),
        new DateElement ("Select Date", DateTime.Now),
        new TimeElement ("Select Time", DateTime.Now),

You can check out the full MonoTouch.Dialog samples from GitHub.

Meet the Xamaritans

Most of the year, the Xamarin team is spread out across the world — in 14 countries. And so, every three or four months, we all get together at our home base in Boston for a week to plan our next steps and to hang out. We call this our Xummit.

This week is Xummit week, and we want to meet you.

So, for those of you in the Boston area, or who can get here by car, train, or hovercraft, please  join us at John Harvard’s Pub in Harvard Square at 8:30pm on Wednesday, November 16th.