Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Developing android applications using Xamarin Vs Native android [closed]

Tags:

c#

android

Does anybody know to give me a comparison of advantages and disadvantages in programming through C# in Xamarin Versus Android java native code?

Is developing through Xamarin is way more limited than native android, or the gap is not that far. I would like to hear opinion from someone who has experience in developing with both technologies.
Thanks

like image 229
CSharper Avatar asked Jan 09 '14 14:01

CSharper


People also ask

Is Xamarin better than native?

Though both Xamarin and React Native offer near-native performance, Xamarin runs the fastest code on Android and iOS and has a user interface (UI) for using native tools. TLDR: In Xamarin vs. React Native, Xamarin has more brownie points for native-like performance. Xamarin wins.

Is Xamarin good for Android development?

The framework from Microsoft fully supports 64-mode and allows for using native tools directly and thus provides the fastest user interface. Xamarin developers can run the fastest code on both Android and iOS platforms.

Is Xamarin being discontinued?

Xamarin support will end on May 1, 2024 for all Xamarin SDKs. Android 13 and Xcode 14 SDKs (iOS and iPadOS 16, macOS 13) will be the final versions Xamarin will target.

Is Xamarin form dying?

Not dead but possibly moribund. In May 2020, Microsoft announced that Xamarin. Forms, a major component of its mobile app development framework, would be deprecated in November 2021 in favour of a new . Net based product called MAUI - Multiform App User Interface.


1 Answers

Update 20160822: This advice still holds true. I continually am asked about this. One company I know of went with Xamarin only to find out that it did not solve their Android problems as they had to learn both languages/implementations to solve most their issues.

Update 20150513: Thus far, this is one of the most asked questions I get from startups. Which way should they go. I inevitably end up pointing them to this post. It is still solid advice.

I've developed with both. You can pretty much do whatever you want in Xamarin. The couple of difficult areas you're going to run into are:

  • Finding good, working example code. Edge cases are really the bummer here.
  • You'll find that you end up learning Java through Xamarin because you have to read so much Java code.

Another problem is that while Xamarin is doing well and is gaining traction, the community is still rather small. This poses a problem when you release a Xamarin app. If you need to bring in someone else to maintain it, they have to know .NET, C# and Android. Finding that combo is rather difficult and I've found that all the contractors or consultants that I needed to update my app were VERY expensive.

Thats the hidden gotcha. It will help you get out the door faster, but up keep and new feature development will cost you, IF you're NOT the one doing the updates.

Why do I know this? I've written two apps with Xamarin that I eventually wanted updated. I had to contact a contractor to do it because I simply didnt have the time. It was quite expensive compared to Android or iOS devs that were already out there. I ended up moving those apps from Xamarin to Native Android and iOS.

That aside. Its a freaking awesome platform. If you plan to always work on it, then use it. Being able to use the power of C# is great. After working with C# for many years I've grown to really have a disdain for Java. Thats personal preference, but it is what it is.

Its all about tradeoffs.

like image 152
Donn Felker Avatar answered Oct 04 '22 03:10

Donn Felker