2. Xamarin?
Xamarin is a cross-platform development tool. With Xamarin, you can
use C# for iOS, Android, and Universal Windows apps.
With Xamarin Forms, User Interface design for all three platforms can
be accomplished within its XAML-based framework.
Jacob Nelson - https://jnelson.in/ 2
3. Benefits
Jacob Nelson - https://jnelson.in/ 3
1
Native User Interfaces
2
Native API Access
3
Close to Native Performance
4. Architecture Overview
Android C# UI iOS C# UI
Shared C# Backend
Traditional Xamarin Approach
Shared C# Backend
With Xamarin.Forms
Shared UI Code
across mobile and desktop platforms
Jacob Nelson - https://jnelson.in/ 4
5. User Interface
Xamarin.Android IDE
• Xamarin.Android Designer (visually create a user interface.)
• programmatic user interface creation in code
Visual Studio
Xamarin.iOS IDE
• iOS Designer
• Xcode's Interface Builder
• programmatic user interface creation in code
• Visual Studio for Mac or Xcode
Xamarin.Forms IDE
• XAML (user interface is defined in an XML file using the XAML syntax) Visual Studio for Mac or Visual Studio
Jacob Nelson - https://jnelson.in/ 5
6. Xamarin.Android
Xamarin.Android exposes the complete Android SDK for .NET
developers. This helps to build fully native Android apps using C# using
Visual Studio IDE.
Jacob Nelson - https://jnelson.in/ 6
7. Xamarin.iOS
Xamarin.iOS exposes the complete iOS SDK for .NET developers. This
helps to build fully native iOS apps using C# using Visual Studio.
Jacob Nelson - https://jnelson.in/ 7
8. Xamarin.Forms
Xamarin.Forms is a cross-platform UI toolkit that allows developers to
efficiently create native user interface layouts that can be shared across
iOS, Android, and Universal Windows Platform apps.
Jacob Nelson - https://jnelson.in/ 8
9. Visual Studio App Center
• Automatically build your app, test it on real devices, and distribute it
to beta testers
• Collect crash reports and user analytics, including custom events.
• Testing application in a hosted device lab with 1000s of real iOS and
Android devices.
• Receive test results, full-resolution screenshots of every step, along
with performance metrics.
Jacob Nelson - https://jnelson.in/ 9
10. Continuous Integration
• Using App Center with Xamarin
(Build solutions with App Center, straight from GitHub, VSTS, or Bitbucket. )
• Using TeamCity with Xamarin
• Using Jenkins with Xamarin
Jacob Nelson - https://jnelson.in/ 10