Understanding Xamarin Development Matt
Matt Milner Independent Consultant Pluralsight Author Interested in
Overview Cross platform mobile development The Xamarin solution C# on all platforms Sharing code Building user interfaces
Mobile App Development Native Cross Platform C++ / C# Cross Platform HTML / JS
Cross platform mobile dev Android Android Studio Java Interface builder Fragments Mac or Windows iOS Xcode Objective C Interface builder Storyboards Mac only
“ ” Target iOS, Android, Windows and Mac with a single, shared C# codebase. Use the same language, APIs and data structures on every platform. Xamarin
C# AndroidMacIOSWindows Windows Phone
Development Choices Xamarin Studio Windows or Mac Visual Studio Windows Only Build / Debug on Mac
Demo XAMARIN STUDIO VISUAL STUDIO
C# Source Code C# on Android.NET Runtime (Mono) Application Package Android Bindings App Android Runtime (Dalvik) Android Bindings
iOS Bindings C# Source Code C# on iOS Native Code Native Application
Portable Class Libraries Single DLL output Select target platforms Only in-common APIs PCL AndroidiOSWindows Windows Phone Maximum code reuse!
Demo PORTABLE CLASS LIBRARIES – EXISTING SOLUTION
Building Native Interfaces Integrated tools for Android and iOS Drag and drop toolbox support Hide some complexities Android UI Code iOS UI Code Shared Code APK iOS
Xamarin Forms Single code base UI in XAML or C# Native platform controls Shared UI Shared Code APKiOS
Matt Milner