News

Xamarin Bolsters Cross-Platform Tools with RoboVM Buy

The acquisition adds Java development capabilities to the company's cross-platform development arsenal.

Xamarin's recent acquisition of RoboVM adds ammunition in its claims to be the only cross-platform mobile development vendor that allows for native iOS and Android app creation in both C# and Java.

The RoboVM buyout opens up Xamarin's tooling to one of the largest developer ecosystems in the world, as research firm IDC estimates between 5 million and 7 million coders work with Java, long the mainstay of Android and varied other development efforts. Java always ranks near the top of programming language popularity indices, garnering the No. 1 spot in two recent rankings.

"The acquisition brings together the top two languages in enterprise development and a path to mobile for nearly every enterprise developer," Xamarin said in a statement.

Like Xamarin does with C#, RoboVM lets Java developers build fully native UIs with complete access to native device functionality, allowing them to share much code across iOS and Android projects. That's not possible with alternative cross-platform approaches such as Web apps or some hybrid products.

While Java is the default language for Google's preferred IDE, Android Studio (which the company now favors over the Eclipse IDE), RoboVM's tooling allows developers to substitute Java for Apple's default language, Objective-C (rapidly being subsumed by Apple's new Swift language). For iOS development, RoboVM provides integration with Apple's WYSIWYG Xcode Interface Builder and compiles Java Virtual Machine (JVM) code into byte code through the use of LLVM compiler.

Xamarin takes a similar approach. "On iOS, Xamarin's Ahead-of-Time (AOT) Compiler compiles Xamarin.iOS applications directly to native ARM assembly code," the companyexplains. "On Android, Xamarin's compiler compiles down to Intermediate Language (IL), which is then Just-in-Time (JIT) compiled to native assembly when the application launches."

"The two companies have taken nearly identical approaches to enabling successful enterprise mobility," Xamarin said. "Xamarin and RoboVM apps are fully native iOS and Android apps -- native UI, native performance, and complete access all of APIs for each device platform -- built from a shared code base across device platforms. Xamarin is the only company with this approach for C# developers, and RoboVM is the only company with this approach for Java developers. The acquisition means that Xamarin now controls the cross-platform mobile development market for the most widely adopted languages capable of native, client-to-server, cloud-to-mobile development."

Xamarin said the two teams will operate independently, each focusing on their respective user bases, while benefitting from each other's developer marketing, sales, enterprise-grade mobile expertise and full mobile lifecycle expertise.

"RoboVM will continue to operate as a separate team and brand so that we can focus solely on the needs of Java developers," RoboVM CEO Henric Müller said in a blog postyesterday. "Being a small, nimble, focused team has helped us accomplish a lot this past year -- such as the release of RoboVM Studio, improved performance and documentation, and same day support for iOS 9 -- and we want to continue to execute on our vision. For example, yesterday we released RoboVM 1.9, which includes improved setup, beautiful new samples, improved documentation, and bug fixes."

While RoboVM can continue to court those 5-7 million Java developers, Xamarin already claims more than 1.2 million downloads of its tooling from developers in some 120 countries.

"Using a cross-platform application development approach has emerged as one of the most popular approaches for building enterprise mobile apps, especially when coupled with generation of native platform code," Xamarin quoted IDC analyst Al Hilwa as saying. "Xamarin is able to address the two largest ecosystems for native mobile application development today with its support for C# and Java."

About the Author

David Ramel is an editor and writer for Converge360.

comments powered by Disqus

Featured

  • Creating Reactive Applications in .NET

    In modern applications, data is being retrieved in asynchronous, real-time streams, as traditional pull requests where the clients asks for data from the server are becoming a thing of the past.

  • AI for GitHub Collaboration? Maybe Not So Much

    No doubt GitHub Copilot has been a boon for developers, but AI might not be the best tool for collaboration, according to developers weighing in on a recent social media post from the GitHub team.

  • Visual Studio 2022 Getting VS Code 'Command Palette' Equivalent

    As any Visual Studio Code user knows, the editor's command palette is a powerful tool for getting things done quickly, without having to navigate through menus and dialogs. Now, we learn how an equivalent is coming for Microsoft's flagship Visual Studio IDE, invoked by the same familiar Ctrl+Shift+P keyboard shortcut.

  • .NET 9 Preview 3: 'I've Been Waiting 9 Years for This API!'

    Microsoft's third preview of .NET 9 sees a lot of minor tweaks and fixes with no earth-shaking new functionality, but little things can be important to individual developers.

  • Data Anomaly Detection Using a Neural Autoencoder with C#

    Dr. James McCaffrey of Microsoft Research tackles the process of examining a set of source data to find data items that are different in some way from the majority of the source items.

Subscribe on YouTube