The Xamarin company produces an open source software platform by the same name, and Xamarin 2.0 was released in February 2013.[32] Xamarin extends the .NET developer platform with tools and libraries specifically for building apps for Android, iOS, tvOS, watchOS, macOS, and Windows (UWP) primarily with C# in Visual Studio. Developers can re-use their existing C# code, and share significant code across device platforms. Several well-known companies including 3M, AT&T, and HP[33][34] have used the platform to create their apps. Xamarin integrates with Visual Studio, Microsoft's IDE for the .NET Framework, and subsequently is available for use by macOS users through Visual Studio for Mac.[22] Xamarin also released a component store to integrate backend systems, 3rd party libraries, cloud services and UI controls directly into mobile apps.[35][36]
Introduced in Xamarin 3 on May 28, 2014, and allows one to use portable controls subsets that are mapped to native controls of Android, iOS and Windows Phone.[37] Windows Phone was deprecated and removed in favour of UWP.
It is also possible to target other different platforms such as Tizen (by Samsung), GTK (Linux), WPF and macOS even though they have stayed in Preview.
This system uses XAML. Microsoft has modified this framework to work with the Universal Windows Platform.[38]
Microsoft enables native mobile development with Blazor. Mobile Blazor Bindings allow developers to build native Android and iOS using C#, .NET, and web programming patterns.[39]
.NET MAUI
At Microsoft Build 2020, Microsoft announced that Xamarin.Forms was going to be merged into .NET 6 as .NET Multi-platform App UI (.NET MAUI).[40] NET MAUI adds macOS support via Mac Catalyst.[41][42]
On May 23, 2022, during Microsoft Build 2022, .NET MAUI was released.[43] Microsoft stated that they will continue supporting Xamarin until it is fully replaced by .NET MAUI in May 2024.[44]
Xamarin Test Cloud
Xamarin Test Cloud makes it possible to test mobile apps written in any language on real, non-jailbroken devices in the cloud. Xamarin Test Cloud uses object-based UI testing to simulate real user interactions.[45]
Xamarin for Visual Studio
Xamarin is a .NET developer platform made up of tools, programming languages, and libraries for building many different types of applications.[46] Xamarin supplies add-ins to Microsoft Visual Studio that allows developers to build Android, iOS, and Windows apps within the IDE using code completion and IntelliSense. Xamarin for Visual Studio also has extensions that provide support for the building, deploying, and debugging of apps on a simulator or a device.[47] In late 2013, Xamarin and Microsoft announced a partnership that included further technical integration and customer programs to make it possible for their joint developer bases to build for all mobile platforms.[48] In addition, Xamarin now includes support for Microsoft Portable Class Libraries[49] and most C# 5.0 features such as async/await. CEO and co-founder of Xamarin, Nat Friedman, announced the alliance at the launch of Visual Studio 2013 in New York.
Xamarin is useful in developing iOS and Android apps.
On March 31, 2016, Microsoft announced that they were merging all of Xamarin's software with every version of Microsoft Visual Studio including Visual Studio Community, and this added various Xamarin features to come pre-installed in Visual Studio such as an iOS emulator.
Xamarin Studio
In February 2013, Xamarin Studio was released as a standalone IDE based on the open source project MonoDevelop for mobile app development on Windows and macOS,[22] as part of Xamarin 2.0.[51] In addition to a debugger, Xamarin Studio includes code completion in C#, an Android UI builder for creating user interfaces without XML, and integration with Xcode Interface Builder for iOS app design.[51][52]
On Windows Xamarin Studio is now deprecated in favor of Xamarin for Visual Studio. In 2016, Microsoft discontinued Xamarin Studio with the release of Visual Studio for Mac.[53]
Xamarin.Mac
Xamarin.Mac was created as a tool for Apple technology application development using the C# programming language. Xamarin.Mac, as with Xamarin.iOS and Xamarin.Android, gives developers up to 90% of code reuse across Android, iOS and Windows.[54] Xamarin.Mac gives C# developers the ability to build fully native Cocoa apps for macOS and allows for native apps that can be put into the Mac App Store.[55][56]
.NET Mobility Scanner
Xamarin's .NET Mobility Scanner lets developers see how much of their .NET code can run on other operating systems, specifically Android, iOS, Windows Phone, and Windows Store. It is a free web-based service that uses Silverlight.[57]
RoboVM
In October 2015 Xamarin announced that they had acquired the Swedish RoboVM for Java developer platform akin to its offerings, the reason stated by Xamarin for the acquisition was that if they developed a Java-based platform from the ground up, their end product would be similar to RoboVM so they acquired the company instead; as a result RoboVM operates independently of the Xamarin team. RoboVM enables developers to build Java apps for iOS and Android with fully native UIs, native performances, and all Java apps have the complete access to the APIs of each developer platform.[58][59]
In April 2016 Microsoft announced that they would discontinue RoboVM and cease all subscriptions after April 30, 2017.[60]
BugVM,[61] a fork of RoboVM was created to maintain the free open source status.[62]