Try our new research platform with insights from 80,000+ expert users
it_user879264 - PeerSpot reviewer
Mobile Practice Director
Real User
Significantly reduces development and test costs
Pros and Cons
  • "It has significantly reduced the skill barrier for development and testers."
  • "The most important impact is the reduction in product lifecycle costs."
  • "It significantly reduces development and test costs, and ensures that there is synergy between the platforms on product features and user experience."
  • "The worst build issue concerns are the caching process MSBuild uses to reduce the build time."

What is our primary use case?

We use Xamarin almost exclusively for development of native mobile applications, even when single platform. The development hardware that we use are MacBook Pros with 16GB RAM and min 500GB SSDs. We run Windows 10 in a Boot Camp partition and virtualized using parallels. We have Xcode installed on the iOS partition and Visual Studio 2017 installed on both Windows and Mac partitions, along with Android SDK and NDK.

We use Xamarin.Android and Xamarin.iOS for apps with a complex UI, and use Xamarin.Forms where applicable.

How has it helped my organization?

It has significantly reduced the skill barrier for development and testers. Our company is mostly a Microsoft stack house, so most developers either use, or are familiar with, C# and .NET. Removing the need to become proficient in two other languages, makes adoption easier. Though it should be noted that developers still have to become familiar/proficient with the iOS and Android SDKs and the lifecycles of the native apps.

The ability to reuse significant amounts of code between platforms, have a single code repository, and a single development team for all platforms has massive advantages. It significantly reduces development and test costs, and ensures that there is synergy between the platforms on product features and user experience. However, the most important impact is the reduction in product lifecycle costs.

What is most valuable?

It allows the development of truly native applications in C# using the power of .NET framework and Visual Studio.

Xamarin allows the same development and build environment to be used for all platforms and code to be controlled in a single code repository. Shared logic, such as business logic and models, can be shared between the platforms, which significantly reduces development, test, and maintenance efforts. Typically, this leads to around 75-80% code reuse between the platforms. If Xamarin.Forms can be used, then this reuse typically rises to around 95%.

Xamarin also leverages the full power of the .NET Framework, including things like lambdas, LINQ, properties, bindings, commands, etc. Lastly, it uses the Visual Studio IDE, by far the most powerful and complete IDE available, making development and maintenance much easier.

The Xamarin SDK provides C# bindings to all native iOS and Android SDK APIs, as well as access to the .NET framework and builds to a native package. The Xamarin Mono run time runs a .NET CSR alongside the native run time with a bridge between them, and handles memory management and garbage collection.

App behavior is completely native and performance is near native (depending on the app architecture, but can be even faster than native if the business logic is computationally intensive). App size and memory footprint is slightly larger than native, due to the need for the inclusion of the .NET and Xamarin libraries. In a debug build, this can be significant. However, in release mode, the build process uses a rigorous linking process which removed most of the unused classes and methods from the managed DLLs. As a result, the average app size increases in a release build by only 5 to 6MB.

What needs improvement?

The most common issues involved are with the IDE and build process. The worst build issue concerns are the caching process MSBuild uses to reduce the build time. It is unnecessarily complex (internally) and will sometimes leave cached files which should have been removed, even when a full solution clean is performed. The work around involves closing the solution and deleting some project folders. Occasionally, IntelliSense loses sync with the code and provides visual error indicators when no error exists.

Xamarin.Forms does have some short comings, especially surrounding performance. Launch time on Android is a particular issue because Xamarin.Forms loads all the external assemblies during initialization. Support for lazy loading or merging of assembles would significantly reduce this, but Microsoft is still committed to a solution. Support of platform specific behavior could also still be improved. However, I believe strongly that Xamarin.Forms is the future of cross-platform native mobile development.

Buyer's Guide
Xamarin Platform
November 2024
Learn what your peers think about Xamarin Platform. Get advice and tips from experienced pros sharing their opinions. Updated: November 2024.
824,067 professionals have used our research since 2012.

For how long have I used the solution?

More than five years.

What other advice do I have?

I have been using Xamarin for about seven years, since before it was Xamarin (it used to be MonoTouch and MonoDroid).

Disclosure: I am a real user, and this review is based on my own experience and opinions.
PeerSpot user
reviewer1997040 - PeerSpot reviewer
Consultant/Software Engineer at a tech services company with 10,001+ employees
Real User
Great feature of wrapping old or native libraries into cross-platform libraries; excellent tech support
Pros and Cons
  • "The technical support is very good and it's close to native."
  • "The recent move to .NET MAUI is a big change that's affecting a lot of the good features."

What is our primary use case?

Xamarin is a framework for creating mobile applications. It can be deployed on any device for mobile app development. I am a user of this solution. 

What is most valuable?

This is a Microsoft-supported source platform so the technical support is very good and it's close to native. It's all compiled into related code and at the same time wraps old libraries or native libraries into cross-platform libraries which is great. I do a lot of proof of concepts, and part of the reason I like Xamarin is that I'm familiar with it and know my way around which saves me a lot of time. 

What needs improvement?

Xamarin is reaching its end of life and they're moving it to .NET MAUI, combining it with other platforms and creating a centralized framework. It's a big change that's affecting a lot of the good features and something they could have done in a more user-friendly way.

For how long have I used the solution?

I've been using this solution for six years. 

What do I think about the stability of the solution?

I have had times when I ran into bugs which can take some time to sort out. I found out the hard way that these bugs can often take quite some time to resolve and that's obviously not ideal.

What do I think about the scalability of the solution?

The solution is scalable, we can vertically build on top of it.

How are customer service and support?

Customer support is good. 

How was the initial setup?

The deployment is fairly straightforward. Since it's backed by Microsoft, the documentation is expensive. There are MVPs working around the clock to help get you up to speed, so implementation is a breeze. It's not really a problem. In that respect, it's much better than React Native. I've deployed this on my phone. 

What's my experience with pricing, setup cost, and licensing?

Xamarin is open source, so it's free. If you're planning on development within a company, it might require purchasing the commercial version.

What other advice do I have?

Until relatively recently, I used this solution all day, every day, but at this stage it would not be my go-to choice and I'd now prefer Flutter or React Native. If you're starting something new and you have experience with .NET, and are already in the environment of the ecosystem, then I would say that you could potentially use Xamarin. But if you are coming from a JS perspective, then I would recommend Flutter. If you're production ready, go with Flutter or React Native. 

The solution has served me well and I rate it eight out of 10. 

Which deployment model are you using for this solution?

On-premises
Disclosure: I am a real user, and this review is based on my own experience and opinions.
PeerSpot user
Buyer's Guide
Xamarin Platform
November 2024
Learn what your peers think about Xamarin Platform. Get advice and tips from experienced pros sharing their opinions. Updated: November 2024.
824,067 professionals have used our research since 2012.
Gurswak Singh - PeerSpot reviewer
Xamarin Developer at Beesolver Technology Pvt Ltd
Real User
Provides a tool kit that crossbreeds from hybrid applications and is user-friendly
Pros and Cons
  • "A single line of code works with android and iOS."
  • "The application platform could be improved."

What is our primary use case?

I'm a developer and we are customers of Xamarin. 

What is most valuable?

We are a 5-member team and Xamarin provides us with a tool kit that crossbreeds from hybrid applications. We write a single line of code that works both with android and iOS. It's a main feature of Xamarin and makes the product very user-friendly. 

What needs improvement?

The application platform could be improved. We've had some compatibility issues on the android side with the different versions although they work fine with iOS. The product lacks some controls and enhancements that would provide additional features that we need.

What do I think about the stability of the solution?

The solution is stable. 

How are customer service and support?

The customer support is quite good, they've helped me several times. 

How would you rate customer service and support?

Positive

How was the initial setup?

The initial setup is very straightforward. Implementation takes about an hour. 

What's my experience with pricing, setup cost, and licensing?

This is an open-source solution and there are no costs on the Xamarin side. If you're using it with iOS then you need to purchase a membership which is about USD$100 per year. 

What other advice do I have?

I recommend Xamarin Platform, it's a good solution and I rate it eight out of 10. 

Which deployment model are you using for this solution?

Public Cloud

If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?

Other
Disclosure: I am a real user, and this review is based on my own experience and opinions.
PeerSpot user
Arif Imran - PeerSpot reviewer
Independent Cross Platform App Development Consultant
Real User
A free and open source mobile app platform with a valuable cross-platform development feature
Pros and Cons
  • "I think the best part about Xamarin is that you can create apps for both platforms using one source code. That's the most powerful feature. When you develop something for Android, it also builds for iVerse as well. The cross-platform aspect of Xamarin is unique. The ability to develop both apps with a single code base is something very unique."
  • "It would be better if they offered more certifications. They offer a number of certifications for Azure but none for Xamarin. This is something that could be provided for developers to show off their competency. Technical support could be better."

What is our primary use case?

We are using Xamarin for a messaging app and customer-facing end-user experiences. It's been great so far, and thankfully all the upgrades that happened throughout the year have led us to develop good UI.

What is most valuable?

I think the best part about Xamarin is that you can create apps for both platforms using one source code. That's the most powerful feature. When you develop something for Android, it also builds for iVerse as well. The cross-platform aspect of Xamarin is unique. The ability to develop both apps with a single code base is something very unique.

What needs improvement?

It would be better if they offered more certifications. They offer a number of certifications for Azure but none for Xamarin. This is something that could be provided for developers to show off their competency. Technical support could be better.

For how long have I used the solution?

I have been working with Xamarin since 2016. I'm very fortunate to have started working with Xamarin before Microsoft acquired it. I have been using Xamarin ever since.

What do I think about the stability of the solution?

Xamarin is a well-supported stable solution.

What do I think about the scalability of the solution?

Xamarin is very scalable. You can develop apps for hundreds or thousands of customers with the same code base. That is something very unique. I have a company that has a team of six Xamarin developers. They are all very experienced.

How are customer service and support?

Technical support could be better. We often get support from the community and only sometimes from the Xamarin team. They are not the best, but they are okay.

How was the initial setup?

The initial setup is straightforward. It wasn't earlier, but now it's pretty easy. You can deploy this solution with just a few clicks. Like any other app, if it's an automated deployment, it will probably take an hour or two. 

What's my experience with pricing, setup cost, and licensing?

Xamarin is free. There is no license unless you go for some high-end enterprise features. Other than that, everything's free.

What other advice do I have?

I would tell potential users to look at the new updates coming in over the next three or four months, as those are critical. The best place for you to start with Xamarin is by following the contributors on YouTube. I know there are many paid courses, but they aren't good or worth the money. It's best to take a course directly provided by the content creator or contributor.

On a scale from one to ten, I would give Xamarin an eight.

Which deployment model are you using for this solution?

Public Cloud

If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?

Microsoft Azure
Disclosure: I am a real user, and this review is based on my own experience and opinions.
PeerSpot user
reviewer1969803 - PeerSpot reviewer
Mobile Developer at a non-profit with 51-200 employees
Real User
Top 20
The shared code base is great but building libraries without native bindings is tedious
Pros and Cons
  • "The solution's most valuable asset is its shared code base in C# that is better for large apps."
  • "The solution does not include Hot Reload which is painful because it causes us to wait quite some time for huge builds."

What is our primary use case?

Our company uses the Native solution to build mobile apps in DevOps that we push to app stores. 

One of our clients is an insurance company and we are building a forms app that needs to be nice but not super smooth because the app is more about data input and output. 

The solution allows us to share libraries from the mobile app to our client's web project. 

What is most valuable?

The solution's most valuable asset is its shared code base in C# that is better for large apps. 

Code is transferred to the .NET framework and the standard libraries for shared code are great. 

The solution is reliable with a very manageable hierarchy that allows multiple roles and permissions.

The solution's pull request system is quite good and unit testing is useful. 

What needs improvement?

The solution does not include Hot Reload which is painful because it causes us to wait quite some time for huge builds. 

The solution does not allow for use of the latest or premium version of Visual Studio so we have to use the 2019 version. 

The layout interface and designer for Android Studio is more advanced than the iOS Builder. Most of our layouts have to be built in Xcode but broken connections and file updates are continuing issues. 

Standard libraries have not been updated in four years because the focus has been on newer products like Xamarin.Forms and .NET MAUI. 

To continue to use the solution, we have to bind SDKs after new Android or iOS platform releases. 

No support is offered that would make our lives easier so we rely instead on Rider as an ID for development because it includes ReSharper. 

The auto update system is not trusted because it has broken our builds on occasion. 

For how long have I used the solution?

I have been using the solution for ten years. 

What do I think about the stability of the solution?

The solution is reliable and stable with no bugs. 

We disabled auto updates because on occasion they were breaking our builds. 

What do I think about the scalability of the solution?

The solution is scalable because of C# which allows large builds across teams. 

How are customer service and support?

I don't need assistance often and am satisfied with past technical support. 

One issue regarding Test Cloud was resolved.

Another issue involving the iOS platform was not resolved by support so I ended up fixing it with a workaround. 

In general, forums contain topics that include workarounds for very early in an issue's lifecycle. Our team has been successful in fixing issues internally. 

Which solution did I use previously and why did I switch?

I used CodeGear for another project. 

How was the initial setup?

The initial setup is straightforward. 

Setup issues are not with the solution but are caused by native items such as Android and iOS provisioning profiles and upload rights. 

What about the implementation team?

Our company includes 30 developers who deploy the solution through a week-long process that includes multiple steps such as regression testing, Test Cloud, and internal processes. 

Once all steps are complete, we automatically upload to stores and promote the version to be used. 

We maintain apps we build for our clients. 

Which other solutions did I evaluate?

Android Studio is growing faster than Visual Studio or Xamarin Studio because they focus only on Android apps. 

The native development of Android Studio is not comparable to Visual Studio. 

What other advice do I have?

MAUI is amazing because it offers multi-platform distribution.

The solution is good but doesn't fit every app or use case so you should consider all options. 

The solution's strength is in form apps but it is not the best option for small, pixel-perfect apps full of animation and transitions. 

The solution does not include native bindings so you have to create one which is a hideous process. Our company opted to work with a third-party for binding six iOS libraries. It was too tedious to have to go through a whole update cycle after changing one item. If an app relies on third-party bindings or libraries, I don't recommend using the solution. 

Which deployment model are you using for this solution?

On-premises
Disclosure: I am a real user, and this review is based on my own experience and opinions.
PeerSpot user
Valmik Magar - PeerSpot reviewer
Sr.Xamarin Developer at SculptSoft
Real User
High availability, scales well, and good dashboard
Pros and Cons
  • "The most valuable feature of the Xamarin Platform is that both the UI are the same in Android and iOS, in one project and Android and iOS, are applications for developing PCL projects. Additionally, the dashboard is good."
  • "The Xamarin.Forms could improve."

What is our primary use case?

I am using the Xamarin Platform because I am using Visual Studio or Xamarin Studio.

What is most valuable?

The most valuable feature of the Xamarin Platform is that both the UI are the same in Android and iOS, in one project and Android and iOS, are applications for developing PCL projects. Additionally, the dashboard is good.

What needs improvement?

The Xamarin.Forms could improve.

For how long have I used the solution?

I have been using the Xamarin Platform for approximately two years.

What do I think about the stability of the solution?

Xamarin Platform is stable.

What do I think about the scalability of the solution?

The scalability of the Xamarin Platform is good.

We have four developers using this solution in my organization.

How are customer service and support?

I have not contacted the support from Xamarin Platform.

How was the initial setup?

The initial setup of the Xamarin Platform is easy and takes one day.

What's my experience with pricing, setup cost, and licensing?

Xamarin Platform is a free open-source solution.

What other advice do I have?

This is a good platform.

I rate Xamarin Platform an eight out of ten.

Which deployment model are you using for this solution?

On-premises
Disclosure: I am a real user, and this review is based on my own experience and opinions.
PeerSpot user
Software Developer at Politecnico di Milano
Real User
Top 20
An open-source solution that is stable and scalable
Pros and Cons
  • "The initial setup is very simple."
  • "The solution always has room for improvement with price, integration, stability, and documentation."

What is our primary use case?

The primary use case of this solution is to reduce the development of applications. For example, when we develop an application for both Android and iOS, instead of writing two different applications using Java and Quest, we write everything in Xamarin Platform and that one application can run on Android and iOS.

What is most valuable?

The solution saves us time by containing all the development work in one application instead of two and it's well-documented. The solution is consolidated, meaning that it's been on the market for many years. Xamarin Platform is stable, it works, and it is very simple.

What needs improvement?

The solution always has room for improvement with price, integration, stability, and documentation.

For how long have I used the solution?

I have been using the solution for one year.

What do I think about the stability of the solution?

The solution is stable.

What do I think about the scalability of the solution?

The solution is used to develop apps for mobile devices so there is no limit. We have 10 developers using the solution in our organization.

How was the initial setup?

The initial setup is very simple.

What about the implementation team?

The deployment was completed in-house.

What's my experience with pricing, setup cost, and licensing?

There is no license fee because the solution is open-source.

What other advice do I have?

I give the solution an eight out of ten.

I recommend the solution to others.

Which deployment model are you using for this solution?

On-premises
Disclosure: I am a real user, and this review is based on my own experience and opinions.
PeerSpot user
PeerSpot user
Works at D’aprile Properties
Real User
Well-integrated with Visual Studio so it will feel very familiar to you once you start
Pros and Cons
  • "Their leadership is exceptional at both listening to the customer base and delivering innovative, best-in-class products."
  • "Being able to use the .NET framework and platform have me creating applications better than anyone who develops on Windows."
  • "Xamarin is well-integrated with Visual Studio so it will feel very familiar to you once you start."
  • "There is limited support for UX widgets."
  • "There are compatibility issues between versions of various Xamarin components."

What is our primary use case?

Xamarin helped us to develop a cross platform mobile app with less time and resources. 

How has it helped my organization?

Managing code is useful using TFS, so a separate code managing software was not required. Authenticating user to app is easy using Azure authentication, which is supported in Xamarin

What is most valuable?

Provides a wide variety of technical work and some interesting problems to solve. 

Being able to use the .NET framework and platform have me creating applications better than anyone who develops on Windows. 

Being able to use Visual Studio means development gets to use the best IDE currently available.

Xamarin is well-integrated with Visual Studio so it will feel very familiar to you once you start. 

What needs improvement?

There is limited support for UX widgets. Also, there are compatibility issues between versions of various Xamarin components.

For how long have I used the solution?

Less than one year.

What do I think about the stability of the solution?

The new go-to-market with Microsoft is different. It will require some adapting.

How is customer service and technical support?

They are genuine, smart, and action-oriented people across the board!

What was our ROI?

It saved a lot of time and resources needed to develop a cross platform mobile app.

What other advice do I have?

If you are already heavily invested in the .NET platform and C# development, Xamarin is the quickest way to make native iOS apps.

Their leadership is exceptional at both listening to the customer base and delivering innovative, best-in-class products. A company that takes great care of its people. 

Xamarin has just been bought by Microsoft. What an endorsement!

Disclosure: I am a real user, and this review is based on my own experience and opinions.
PeerSpot user