Jump to content

Xamarin

From Wikipedia, the free encyclopedia
(Redirected from .NET Multi-platform App UI)

Xamarin Inc.
Company typeSubsidiary
IndustrySoftware industry
FoundedMay 16, 2011; 13 years ago (2011-05-16)[1]
HeadquartersSan Francisco, California
Key people
Miguel de Icaza, Nat Friedman
ParentMicrosoft (2016–present)
Websitexamarin.com
Footnotes / references
[2]

Xamarin is a Microsoft-owned San Francisco-based software company founded in May 2011[2] by the engineers that created Mono,[3] Xamarin.Android (formerly Mono for Android) and Xamarin.iOS (formerly MonoTouch), which are cross-platform implementations of the Common Language Infrastructure (CLI) and Common Language Specifications (often called Microsoft .NET).

With a C#-shared codebase, developers can use Xamarin tools to write native Android, iOS, and Windows apps with native user interfaces and share code across multiple platforms, including Windows, macOS, and Linux.[4] According to Xamarin, over 1.4 million developers were using Xamarin's products in 120 countries around the world as of April 2017.[5]

On February 24, 2016, Microsoft announced it had signed a definitive agreement to acquire Xamarin.[6]

Microsoft ended support for Xamarin on May 1, 2024 in favor of .NET MAUI.[7]

History

[edit]

Origins in Ximian and Mono

[edit]
Miguel de Icaza in 2006
Nat Friedman in 2006

In 1999 Miguel de Icaza and Nat Friedman launched what eventually became known as Ximian to support and develop software for de Icaza's nascent GNOME project. After Microsoft first announced their .NET Framework in June 2000,[8] de Icaza began investigating whether a Linux version was feasible.[9] The Mono open source project was launched on July 19, 2001. Ximian was bought by Novell on August 4, 2003, which was then acquired by Attachmate in April 2011.[10]

After the acquisition, Attachmate announced hundreds of layoffs for the Novell workforce, including Mono developers,[11] putting the future of Mono in question.[12][13]

Founding Xamarin

[edit]

On May 16, 2011, Miguel de Icaza announced on his blog that Mono would be developed and supported by Xamarin, a newly formed company that planned to release a new suite of mobile products. According to de Icaza, at least part of the original Mono team had moved to the new company.

The name Xamarin comes from the name of the Tamarin monkey, replacing the leading T with an X. This is in line with the naming theme used ever since Ximian was started.[14]

After Xamarin was announced, the future of the project was questioned since MonoTouch and Mono for Android would now be in direct competition with the existing commercial offerings owned by Attachmate. It was not known at that time how Xamarin would prove they had not illegally used technologies previously developed when they were employed by Novell for the same work.[15][16]

In July 2011, however, Novell – now a subsidiary of Attachmate – and Xamarin announced that Novell had granted a perpetual license to Xamarin for Mono, MonoTouch and Mono for Android, and Xamarin formally and legally took official stewardship of the project.[17][18]

Product development

[edit]

In December 2012, Xamarin released Xamarin.Mac,[19] a plugin for the existing MonoDevelop Integrated development environment (IDE), which allows developers to build C#-based applications for the Apple's macOS operating system and package them for publishing via the App Store.

In February 2013, Xamarin announced the release of Xamarin 2.0.[20] The release included two main components: Xamarin Studio, a re-branding of its open-source IDE Monodevelop;[21] and integration with Visual Studio, Microsoft's IDE for the .NET Framework, allowing Visual Studio to be used for creating applications for Android, iOS and Windows.[22]

Funding

[edit]

On July 17, 2013, Xamarin announced that they had closed $16 million (~$20.6 million in 2023) in Series B funding led by Lead Edge Capital.[23] Several investors from their Series A funding also participated, including Charles River Ventures, Floodgate, and Ignition Partners. On August 21, 2014, Xamarin successfully closed an additional $54 million (~$68.5 million in 2023) in Series C funding, which is one of the largest rounds of funding ever raised by a mobile app development platform.[24] As of August 2014 the total funding for the company was $82 million (~$104 million in 2023).[25]

Acquisition

[edit]

On February 24, 2016, Xamarin and Microsoft announced that Microsoft signed a definitive agreement to acquire Xamarin.[6][26][27] Terms of the deal were not disclosed, though the Wall Street Journal reported the price at between $400 million and $500 million.[better source needed]

Microsoft subsidiary (2016–present)

[edit]

At Microsoft Build 2016 Microsoft announced that they will open-source the Xamarin SDK and that they will bundle it as a free tool within Microsoft Visual Studio's integrated development environment,[28] and Visual Studio Enterprise users would also get Xamarin's enterprise features free of charge. As a part of the acquisition they would also relicense Mono completely under the MIT License and would release all other Xamarin SDK software through the .NET Foundation also under the MIT License.[29][30]

Products

[edit]

Xamarin platform

[edit]

The Xamarin company produces an open source[citation needed] software platform by the same name, and Xamarin 2.0 was released in February 2013.[31] 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[32][33] 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.[21] Xamarin also released a component store to integrate backend systems, 3rd party libraries, cloud services and UI controls directly into mobile apps.[34][35]

Xamarin.Forms

[edit]

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.[36] 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.[37]

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.[38]

.NET MAUI

[edit]
.NET Multi-platform App UI
Other names.NET MAUI
Developer(s)Microsoft
Initial releaseMay 19, 2020; 4 years ago (2020-05-19)
Stable release
6.0.312 / May 19, 2022; 2 years ago (2022-05-19)
Preview release
6.0.300-rc.3.5667 / May 10, 2022; 2 years ago (2022-05-10)
Repositorygithub.com/dotnet/maui
Written inC#
Platform.NET 6
TypeWidget toolkit
LicenseMIT License
Websitedocs.microsoft.com/en-us/dotnet/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).[39] .NET MAUI adds macOS support via Mac Catalyst.[40][41]

On May 23, 2022, during Microsoft Build 2022, .NET MAUI was released.[42] Microsoft stated that they will continue supporting Xamarin until it is fully replaced by .NET MAUI in May 2024.[43]

Xamarin Test Cloud

[edit]

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.[44]

Xamarin for Visual Studio

[edit]

Xamarin is a .NET developer platform made up of tools, programming languages, and libraries for building many different types of applications.[45] 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.[46] 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.[47] In addition, Xamarin now includes support for Microsoft Portable Class Libraries[48] 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.[49]

Xamarin Studio

[edit]

At the time of its release in February 2013, Xamarin Studio was a standalone IDE for mobile app development on Windows and macOS,[21] as part of Xamarin 2.0 based on the open source project MonoDevelop.[50] 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.[50][51]

On Windows Xamarin Studio is now deprecated and was replaced with Xamarin for Visual Studio. On macOS Xamarin Studio is still in development, but was rebranded in 2016 as Visual Studio for Mac.[52]

Xamarin.Mac

[edit]

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.[53] 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.[54][55]

.NET Mobility Scanner

[edit]

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.[56]

RoboVM

[edit]

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.[57][58]

In April 2016 Microsoft announced that they would discontinue RoboVM and cease all subscriptions after April 30, 2017.[59]

BugVM,[60] a fork of RoboVM was created to maintain the free open source status.[61]

Acquisitions

[edit]
  • In 2013, Xamarin acquired the mobile application testing platform LessPainful.[62]
  • In 2015, Xamarin acquired the Java application development platform RoboVM.[63]

References

[edit]
  1. ^ "Announcing Xamarin". Miguel de Icaza. Archived from the original on May 18, 2011. Retrieved May 16, 2011.
  2. ^ a b Binstock, Andrew (June 11, 2011). "NET Alternative in Transition". InformationWeek. Archived from the original on December 7, 2011. Retrieved March 18, 2012.
  3. ^ Miguel de Icaza (May 16, 2011). "Miguel de Icaza". Archived from the original on May 18, 2011. Retrieved May 16, 2011.
  4. ^ "What is Xamarin?". Archived from the original on February 27, 2014. Retrieved April 1, 2014.
  5. ^ "About Xamarin". Archived from the original on March 17, 2017. Retrieved April 23, 2017.
  6. ^ a b "Microsoft to acquire Xamarin and empower more developers to build apps on any device". Official Microsoft Blog. February 24, 2016. Archived from the original on February 24, 2016. Retrieved February 24, 2016.
  7. ^ "Xamarin official support policy | .NET". Microsoft. Retrieved June 5, 2024.
  8. ^ "Microsoft sees nothing but .NET ahead" Archived November 5, 2011, at the Wayback Machine, Steven Bonisteel, ZDNet, June 23, 2000
  9. ^ "Mono early history". Mono-list. October 13, 2003. Archived from the original on June 6, 2011. Retrieved May 21, 2011.
  10. ^ "The Attachmate Group Completes Acquisition of Novell". April 27, 2011. Archived from the original on April 30, 2014. Retrieved April 1, 2014.
  11. ^ Koep, Paul (May 2, 2011). "Employees say hundreds laid off at Novell's Provo office". KSL-TV. Archived from the original on May 5, 2011. Retrieved May 7, 2011.
  12. ^ J. Vaughan-Nichols, Steven (May 4, 2011). "Is Mono dead? Is Novell dying?". ZDNet. Archived from the original on May 8, 2011. Retrieved May 7, 2011.
  13. ^ Clarke, Gavin (May 3, 2011). ".NET Android and iOS clones stripped by Attachmate". The Register. Archived from the original on May 6, 2011. Retrieved May 7, 2011.
  14. ^ John K. Waters (May 20, 2011). "Interview with Miguel de Icaza". Archived from the original on February 22, 2017.
  15. ^ "The Death and Rebirth of Mono". infoq.com. May 17, 2011. Archived from the original on May 21, 2011. Retrieved May 29, 2011. Even if they aren't supporting it, they do own a product that is in direct competition with Xamarin's future offerings. Without some sort of legal arrangement between Attachmate and Xamarin, the latter would face the daunting prospect of proving that their new development doesn't use any the technology that the old one did. Considering that this is really just a wrapper around the native API, it would be hard to prove you had a clean-room implementation even for a team that wasn't intimately familiar with Attachmate's code.
  16. ^ Matthew Baxter-Reynolds (July 5, 2011). "What now for cross-platform mobile C#?". The Guardian. Archived from the original on April 24, 2016. Retrieved July 15, 2011. But with a total lack of clarity as to whether Novell will allow Xamarin to sell their new products, or whether agreements exist to facilitate such a scenario, we're left in an unpleasant world of not having a compelling or workable solution for compromise free, multi-platform development.
  17. ^ "SUSE and Xamarin Partner to Accelerate Innovation and Support Mono Customers and Community". Novell. July 18, 2011. Archived from the original on October 17, 2011. Retrieved July 18, 2011. The agreement grants Xamarin a broad, perpetual license to all intellectual property covering Mono, MonoTouch, Mono for Android and Mono Tools for Visual Studio. Xamarin will also provide technical support to SUSE customers using Mono-based products, and assume stewardship of the Mono open source community project.
  18. ^ De Icaza, Miguel (July 18, 2011). "Novell/Xamarin Partnership around Mono". Archived from the original on July 20, 2011. Retrieved July 18, 2011.
  19. ^ "Your C# App on 66 Million Macs: Announcing Xamarin.Mac". Xamarin. December 12, 2012. Archived from the original on July 19, 2013. Retrieved July 12, 2013.
  20. ^ "Announcing Xamarin 2.0". Xamarin. February 20, 2013. Archived from the original on June 27, 2013. Retrieved July 12, 2013.
  21. ^ a b c "Xamarin 2.0 Review". Dr Dobb's Journal. March 12, 2013. Archived from the original on July 2, 2013. Retrieved July 12, 2013. Xamarin 2.0 bundles the company's Android, iOS and Mac development tools in a single affordable package
  22. ^ "12 benefits of Xamarin Cross-platform app development". HeadWorks. March 15, 2019.
  23. ^ Lardinois, Frederic (July 17, 2013). "Xamarin Raises $16M Series B Round Led By Lead Edge Capital, Passes 20,000 Paid Developer Seats". TechCrunch. Archived from the original on January 20, 2015. Retrieved January 15, 2015.
  24. ^ Lardinois, Frederic (August 21, 2014). "Cross-Platform Development Platform Xamarin Raises $54M Series C". TechCrunch. Archived from the original on January 19, 2015. Retrieved January 15, 2015.
  25. ^ Kepes, Ben (August 21, 2014). "Xamarin Raises $54 Million--Because M&A... And Mobile". Forbes. Archived from the original on December 30, 2014. Retrieved January 15, 2015.
  26. ^ "Breaking: Microsoft acquires Xamarin, a leading platform provider for mobile app development". Microsoft PowerUser. February 24, 2016. Archived from the original on February 27, 2016. Retrieved February 24, 2016.
  27. ^ Greene, Jay (February 24, 2016). "Microsoft Agrees to Acquire Xamarin Inc. Deal reflects efforts to increase Microsoft software's presence on devices beyond those that run Windows". Wall Street Journal. Archived from the original on February 24, 2016. Retrieved February 24, 2016.
  28. ^ Taft, Darryl K. (March 31, 2016). "Microsoft Makes Xamarin free in Visual Studio, Open-Sources SDK". eWeek.
  29. ^ Ferraira, Bruno (March 31, 2016). "Xamarin now comes free with Visual Studio". The Tech Report. Archived from the original on April 2, 2016.
  30. ^ Frank, Blair Hanley (March 31, 2016). "Microsoft shows fruits of Xamarin acquisition with Visual Studio integration". PC World. Archived from the original on April 3, 2016.
  31. ^ "Xamarin delivers tool for building native Mac OS X apps with C#". ZDNet. December 13, 2012. Archived from the original on April 7, 2014. Retrieved April 1, 2014.
  32. ^ "Xamarin for Android". Archived from the original on April 23, 2014. Retrieved April 1, 2014.
  33. ^ "Xamarin for iOS". Archived from the original on March 30, 2014. Retrieved April 1, 2014.
  34. ^ Peter Bright (February 20, 2013). "Xamarin 2.0 reviewed: iOS development comes to Visual Studio". Archived from the original on April 14, 2014. Retrieved April 1, 2014.
  35. ^ Mikael Ricknäs (June 25, 2013). "Xamarin tool aims to show the ease with which .NET apps can become mobile". Archived from the original on April 7, 2014. Retrieved April 1, 2014.
  36. ^ "Announcing Xamarin 3".
  37. ^ "Windows Platform Features - Xamarin". docs.microsoft.com.
  38. ^ Krill, Paul (January 14, 2020). "Microsoft enables native mobile development with Blazor". InfoWorld. Retrieved February 6, 2020.
  39. ^ "Xamarin Updates From Microsoft Build 2020". Xamarin Blog. May 19, 2020. Retrieved May 28, 2020.
  40. ^ "Introducing .NET Multi-platform App UI". .NET Blog. May 19, 2020. Retrieved June 4, 2021.
  41. ^ "dotnet/maui". GitHub. Retrieved May 28, 2020.
  42. ^ "Introducing .NET MAUI – One Codebase, Many Platforms". May 23, 2022.
  43. ^ "Xamarin official support policy | .NET". Microsoft. Retrieved April 10, 2023.
  44. ^ "Xamarin Test Cloud". Archived from the original on April 7, 2014. Retrieved April 1, 2014.
  45. ^ "Xamarin and Microsoft Announce Global Collaboration". November 13, 2013. Archived from the original on April 7, 2014. Retrieved April 1, 2014.
  46. ^ "Xamarin Visual Studio". Archived from the original on April 23, 2014. Retrieved April 1, 2014.
  47. ^ Abel Avram (November 13, 2013). "Developing iOS & Android Apps with C# in Visual Studio". Archived from the original on April 7, 2014. Retrieved April 1, 2014.
  48. ^ Mikael Ricknäs (November 13, 2013). "Microsoft, Xamarin simplify cross-platform development". Archived from the original on April 7, 2014. Retrieved April 1, 2014.
  49. ^ Jones, Luke (March 31, 2016). "Build 2016: Microsoft Talks Xamarin, Coming Free to Visual Studio with an iOS Emulator". Winbuzzer News. Archived from the original on April 14, 2016.
  50. ^ a b "Xamarin Components". Archived from the original on May 6, 2014. Retrieved April 1, 2014.
  51. ^ Tom Thompson (April 26, 2013). "Review: Xamarin 2.0 works mobile development magic". Archived from the original on April 2, 2014. Retrieved April 1, 2014.
  52. ^ "Microsoft makes Visual Studio for Mac generally available". ZDNet. Archived from the original on May 16, 2017. Retrieved May 17, 2017.
  53. ^ Tim Anderson (November 13, 2013). "Microsoft, Xamarin give Visual Studio a leg-up for... Android and iOS?". The Register. Archived from the original on March 20, 2014. Retrieved April 1, 2014.
  54. ^ John Koetsier (February 20, 2013). "Xamarin debuts Android and iOS app development inside Visual Studio for C# programmers". Archived from the original on April 7, 2014. Retrieved April 1, 2014.
  55. ^ Darryl K. Taft (December 14, 2012). "Can Xamarin's New Mac Tool Lift C# Above Objective-C?". Retrieved April 1, 2014.
  56. ^ How mobile is your .NET? Archived June 25, 2014, at the Wayback Machine, Retrieved June 24, 2014
  57. ^ Butler, Victoria (October 21, 2015). "Xamarin Acquires RoboVM, Now the Only Cross-Platform Mobile Development Company for the Top Two Enterprise Languages. Acquisition provides a path to mobile for 13 million C# and Java enterprise developers". Business Wire. Archived from the original on March 1, 2016.
  58. ^ Taft, Darryl K. (October 21, 2015). "Xamarin Buys RoboVM, Adds Java to its C# Fold". eWeek.
  59. ^ Anderson, Tim (April 16, 2016). "Embrace, extend – and kill. Microsoft discontinues RoboVM". The Register (Biting the hand that feeds IT). Archived from the original on August 10, 2017.
  60. ^ "BugVM – We are the BugVM". Archived from the original on August 3, 2016. Retrieved July 1, 2016.
  61. ^ "BugVM – ibinti". Archived from the original on August 3, 2016.
  62. ^ Tolentino, Melissa (April 16, 2013). "Xamarin Acquires LessPainful, Introduces Automated UI Testing Platform". SiliconANGLE. Archived from the original on March 7, 2016.
  63. ^ Butler, Victoria (October 21, 2015). "Xamarin Acquires RoboVM, Now the Only Cross-Platform Mobile Development Company for the Top Two Enterprise Languages". Yahoo! Finance. Archived from the original on October 15, 2016.
[edit]