Xamarin
Deliver native Android, iOS, and Windows apps with a single shared .NET code base.
Jacob Nelson
Software Architect
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
Benefits
Jacob Nelson - https://jnelson.in/ 3
1
Native User Interfaces
2
Native API Access
3
Close to Native Performance
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
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
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
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
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
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
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
Thank You

Xamarin Overview

  • 1.
    Xamarin Deliver native Android,iOS, and Windows apps with a single shared .NET code base. Jacob Nelson Software Architect
  • 2.
    Xamarin? Xamarin is across-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 thecomplete 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 thecomplete 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 across-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 AppCenter • 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 • UsingApp 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
  • 11.