A couple of Saturdays ago, I helped out at the Tampa edition of Xamarin Dev Days, a full-day event where attendees found out more about Xamarin, Microsoft’s cross-platform mobile-and-more development tool. saw development demos, and participated in an afternoon workshop where they built their first Xamarin app.
If you missed the event, you haven’t missed the opportunity to learn! The presentations we gave were local versions of the official presentations, which you can check out below.
Get Xamarin
Xamarin comes built into Visual Studio, which you can get for free for either Windows or Mac. I did my demos on my Mac, while my fellow presenters did theirs on their Windows machines.
Get the demo code
Building Xamarin native apps
Introduction to Xamarin
My presentation at the recent Xamarin Dev Days event in Tampa was modeled after the official “Introduction to Xamarin” one, shown below. This demo walks you through the process of building an image search app with Xamarin for both Android and iOS the “native” way, where the solution has three distinct parts:
- A common base of application logic code that both the Android and iOS versions use,
- Code for the Android UI, and
- Code for the iOS UI.
This is a “best of both worlds” approach, where you get the benefits of “write once, run on all your target platforms” with the application logic part of your app, and the “native look and feel” benefits of having Android- and iOS-specific UI code. The downside of the “native” approach is that familiarity with C# and the .NET framework isn’t enough; you have to also be familiar with the libraries and techniques used in Android and iOS programming.
Xamarin’s plugins provide a way to deal with platform-specific coding through abstraction. The demo above uses a couple of plugins to provide cross-platform functions to check for network connectivity and display alert boxes, tasks that you’d normally have to perform separately for Android and iOS.
You may also find these videos useful:
Intro to Xamarin for Visual Studio: Native iOS, Android, and Windows Apps in C#
Building Your First Android App with Xamarin for Visual Studio
Building Your First Android App with Xamarin for Visual Studio
Cross-platform UI with Xamarin.Forms
Russ Fustino gave the Xamarin.Forms presentation at Xamarin Dev Days. Xamarin.Forms provides a way to write a single application that runs on all the platforms that Xamarin targets by having you code to a single UI, which then gets rendered using each platform’s native UI elements and “look and feel”:
Here’s the presentation that was the basis for the one Russ gave:
You may also find these videos useful:
Building Your First Xamarin.Forms App with Xamarin for Visual Studio
Customizing Xamarin.Forms UI
Xamarin and Azure
Greg Leonardo gave his version of this presentation, in which you build you first cloud-connected app using both Xamarin and Azure:
You may also find this video useful:
Connected Mobile Apps with Microsoft Azure