Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

JUniversal
JUniversal

1
8
+ 1
0
Xamarin
Xamarin

772
743
+ 1
705
Add tool

JUniversal vs Xamarin: What are the differences?

Developers describe JUniversal as "A new, Java-based approach to cross-platform mobile apps (used by Google Inbox and Google Spreadsheets)". The vision of JUniversal came from some guys at Nokia who possess considerable expertise both in Java and in building cross-platform apps. They built this tool to provide an elegant way to translate source code and make it useful across multiple platforms. JUniversal offers you the freedom to write your shared code in Java and then translate it to C# (available now) or to C++/Objective C++ (coming soon). You can also combine JUniversal with Google鈥檚 j2objc translator to translate Java to Objective-C for iOS. On the other hand, Xamarin is detailed as "Create iOS, Android and Mac apps in C#". Xamarin鈥檚 Mono-based products enable .NET developers to use their existing code, libraries and tools (including Visual Studio*), as well as skills in .NET and the C# programming language, to create mobile applications for the industry鈥檚 most widely-used mobile devices, including Android-based smartphones and tablets, iPhone, iPad and iPod Touch.

JUniversal and Xamarin belong to "Cross-Platform Mobile Development" category of the tech stack.

Some of the features offered by JUniversal are:

  • OAuth (based on Scribe)
  • JSON
  • Unit testing (JUnit)

On the other hand, Xamarin provides the following key features:

  • Cross-platform development- Thinking about supporting iOS, Android, Mac and Windows? Xamarin allows you to write it all in C#.
  • Reuse existing code- Use your favorite .NET libraries in Xamarin apps. Easily use third-party native libraries and frameworks.
  • Discover as you type- Explore APIs as you type with code autocompletion.

JUniversal is an open source tool with 132 GitHub stars and 22 GitHub forks. Here's a link to JUniversal's open source repository on GitHub.

- No public GitHub repository available -

What is JUniversal?

The vision of JUniversal came from some guys at Nokia who possess considerable expertise both in Java and in building cross-platform apps. They built this tool to provide an elegant way to translate source code and make it useful across multiple platforms. JUniversal offers you the freedom to write your shared code in Java and then translate it to C# (available now) or to C++/Objective C++ (coming soon). You can also combine JUniversal with Google鈥檚 j2objc translator to translate Java to Objective-C for iOS.

What is Xamarin?

Xamarin鈥檚 Mono-based products enable .NET developers to use their existing code, libraries and tools (including Visual Studio*), as well as skills in .NET and the C# programming language, to create mobile applications for the industry鈥檚 most widely-used mobile devices, including Android-based smartphones and tablets, iPhone, iPad and iPod Touch.
Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Why do developers choose JUniversal?
Why do developers choose Xamarin?
    Be the first to leave a pro

    Sign up to add, upvote and see more prosMake informed product decisions

      Be the first to leave a con

      Sign up to add, upvote and see more consMake informed product decisions

      What companies use JUniversal?
      What companies use Xamarin?

      Sign up to get full access to all the companiesMake informed product decisions

      What tools integrate with JUniversal?
      What tools integrate with Xamarin?

      Sign up to get full access to all the tool integrationsMake informed product decisions

      What are some alternatives to JUniversal and Xamarin?
      React Native
      React Native enables you to build world-class application experiences on native platforms using a consistent developer experience based on JavaScript and React. The focus of React Native is on developer efficiency across all the platforms you care about - learn once, write anywhere. Facebook uses React Native in multiple production apps and will continue investing in React Native.
      Ionic
      Free and open source, Ionic offers a library of mobile and desktop-optimized HTML, CSS and JS components for building highly interactive apps. Use with Angular, React, Vue, or plain JavaScript.
      Flutter
      Flutter is a mobile app SDK to help developers and designers build modern mobile apps for iOS and Android.
      Apache Cordova
      Apache Cordova is a set of device APIs that allow a mobile app developer to access native device function such as the camera or accelerometer from JavaScript. Combined with a UI framework such as jQuery Mobile or Dojo Mobile or Sencha Touch, this allows a smartphone app to be developed with just HTML, CSS, and JavaScript.
      PhoneGap
      PhoneGap is a web platform that exposes native mobile device apis and data to JavaScript. PhoneGap is a distribution of Apache Cordova. PhoneGap allows you to use standard web technologies such as HTML5, CSS3, and JavaScript for cross-platform development, avoiding each mobile platforms' native development language. Applications execute within wrappers targeted to each platform, and rely on standards-compliant API bindings to access each device's sensors, data, and network status.
      See all alternatives
      Decisions about JUniversal and Xamarin
      Greg Neumann
      Greg Neumann
      Indie, Solo, Developer | 7 upvotes 291.7K views
      Xamarin
      Xamarin
      .NET Core
      .NET Core
      Xamarin Forms
      Xamarin Forms
      ASP.NET
      ASP.NET
      Quasar Framework
      Quasar Framework
      Electron
      Electron
      Vue.js
      Vue.js
      TypeScript
      TypeScript

      Finding the most effective dev stack for a solo developer. Over the past year, I've been looking at many tech stacks that would be 'best' for me, as a solo, indie, developer to deliver a desktop app (Windows & Mac) plus mobile - iOS mainly. Initially, Xamarin started to stand-out. Using .NET Core as the run-time, Xamarin as the native API provider and Xamarin Forms for the UI seemed to solve all issues. But, the cracks soon started to appear. Xamarin Forms is mobile only; the Windows incarnation is different. There is no Mac UI solution (you have to code it natively in Mac OS Storyboard. I was also worried how Xamarin Forms , if I was to use it, was going to cope, in future, with Apple's new SwiftUI and Google's new Fuchsia.

      This plethora of techs for the UI-layer made me reach for the safer waters of using Web-techs for the UI. Lovely! Consistency everywhere (well, mostly). But that consistency evaporates when platform issues are addressed. There are so many web frameworks!

      But, I made a simple decision. It's just me...I am clever, but there is no army of coders here. And I have big plans for a business app. How could just 1 developer go-on to deploy a decent app to Windows, iPhone, iPad & Mac OS? I remembered earlier days when I've used Microsoft's ASP.NET to scaffold - generate - loads of Code for a web-app that I needed for several charities that I worked with. What 'generators' exist that do a lot of the platform-specific rubbish, allow the necessary customisation of such platform integration and provide a decent UI?

      I've placed my colours to the Quasar Framework mast. Oh dear, that means Electron desktop apps doesn't it? Well, Ive had enough of loads of Developers saying that "the menus won't look native" or "it uses too much RAM" and so on. I've been using non-native UI-wrapped apps for ages - the date picker in Outlook on iOS is way better than the native date-picker and I'd been using it for years without getting hot under the collar about it. Developers do get so hung-up on things that busy Users hardly notice; don't you think?. As to the RAM usage issue; that's a bit true. But Users only really notice when an app uses so much RAM that the machine starts to page-out. Electron contributes towards that horizon but does not cause it. My Users will be business-users after all. Somewhat decent machines.

      Looking forward to all that lovely Vue.js around my TypeScript and all those really, really, b e a u t I f u l UI controls of Quasar Framework . Still not sure that 1 dev can deliver all that... but I'm up for trying...

      See more
      Interest over time
      Reviews of JUniversal and Xamarin
      Review ofXamarinXamarin

      I'm working in Huge company and I'm in charge to choose the cross-platform environment to develop Mobile application for all our services. I choose Xamarin but because the error i get everytime in Visual Studio, I want to leave it and recommand another solution. In fact that's why I'm here.

      Weird, Install VS2017 with Xamarin on a new PC Create a new app GOT ERRORS.....!!!!!

      Thank you for considering this

      How developers use JUniversal and Xamarin
      Avatar of Google
      Google uses JUniversalJUniversal

      Comment from HackerNews (https://news.ycombinator.com/item?id=8998736)

      This is how Google Inbox and Google Spreadsheets works. See the slides from my recently produced GWT Create Session (http://t.co/ZvoaHxCoZT). J2ObjC slide deck here (https://docs.google.com/presentation/d/1mW_Plm5jAygELf7qjVK7...) Videos of the conference will be online soon.

      Prior to that, some 20% Googlers also produced the PlayN library (https://github.com/threerings/playn) This was taken over by Michael Bayne who added an iOS backend by Bytecode -> IKVM -> Mono conversion. I beleive j2objc and RoboVM backends exist now as well.

      The major benefit of the j2objc approach is the avoidance of GC in favor of ARC, the conversion of message-sends into C-method calls when possible, and integration with existing iOS toolchain.

      When we started, it seemed like an iffy idea, but after developing a product delivered to millions of users on a high volume site (gmail) that has 70% code sharing, and being able to simultaneously develop, test, and deploy across the platforms reasonably efficiently, a lot of skeptics have become converts to the concept.

      Avatar of Foundbite
      Foundbite uses XamarinXamarin

      Xamarin enables us to develop for 3 platforms (iOS, Android and Windows Phone) with one core codebase coded in C#. Xamarin has allowed us to release an app on all three platforms and develop them simultaneously - not bad for a team of 2!

      Avatar of Ana Phi Sancho
      Ana Phi Sancho uses XamarinXamarin

      Self taught : acquired knowledge or skill on one's own initiative. Platform: OSX 10.8 or later. Mac computer user.

      Avatar of Robert Brown
      Robert Brown uses XamarinXamarin

      Build & ship OS X & iOS apps from Visual Studio on Windows. Requires paid team license.

      Avatar of Daniel Kovacs
      Daniel Kovacs uses XamarinXamarin

      Mobile app development with PCL and Xamarin.iOS and Xamarin.Android.

      Avatar of Olo
      Olo uses XamarinXamarin

      Cross platform, white labelled native mobile apps

      How much does JUniversal cost?
      How much does Xamarin cost?
      Pricing unavailable
      News about JUniversal
      More news