For those of you who don’t know yet, Xamarin is an open source platform for building modern, best-performing apps for iOs, Android, and Windows with .NET.
We could define Xamarin as a layer that manages the communication between the shared code and the underlying platform code. This platform runs in a managed environment that will provide us with benefits such as memory allocation and / or garbage collection.
Its advantage is clear, Xamarin allows developers to share an average of 90% of the application between platforms. This will allow to write all business logic in a single language (or reuse existing application code), allowing us to achieve native performance and appearance on each platform.
This will allow our developers to write Xamarin applications on PC or Mac, and compile into native application packages, such as an .apk file on Android or .ipa on iOS.
Xamarin.Essentials is a library that provides cross-platform API for native device features. And like Xamarin itself, Xamarin Essentials is an abstraction that simplifies the process of accessing native functionality. Some examples of the functionality provided by Xamarin.Essentials are as follows:
Similarly, Xamarin Essentials can provide us with relevant information for the development of our Apps. Such as checking the status of the network connection, Access to the file system, storing preferences, geolocation, etc.
Another interesting point about this library is that being an oficial Xamarin library, it allows the developer community to make changes to give access to more functionalities, making it a library that is always in continuous expansión and improvement.
In addition, it must be added that, despite offering many functions, it is prepared so that the final App only includes the code of those that are used, which contributes to making the final result of our App lighter. If you want to start using this library, you can follow this Getting Started Guide.
InAppBilling is a plugin that will allow us to access the purchasing system within the App, whether they are consumables or subscriptions, to make or restore them.
One of its main barriers is that the internal purchasing systems in Apps are quite complex, in addition to being completely different between Android and iOS systems.
Being completely necessary to understand how both systems work to be able to register purchases or renewal of subscriptions that are made within our application.
The main advantage that this plugin offers us is the ease and simplicity with which it allows us to integrate it into our App.
As defined on their official website, Lottie is a native iOS, Android, and React library that renders After Effects animations in real time, allowing applications to use animations just as easily as static images.
Lottie is a library developed by the famous accommodation company Airbnb. And as they well define on their website, its main function is to run Adobe After Effects animations in mobile applications.
LottieXamarin will allow us to use Lottie without having to carry out any additional development, significantly reducing our development time, and together with the LottieFiles portal. Which contains hundreds of thousands of ready-to-use animations, we can develop and have an App with fluid and elaborate animations in a matter of minutes.
These are the 3 top Xamarin libraries that every developer should know about, but you can find these and many more libraries in lists like this one, curated by Javier Suárez Ruiz, Xamarin.Forms Software Engineer at Microsoft.