SlideShare a Scribd company logo
Intro to Building Mobile
Apps with Xamarin
HEATHER DOWNING
Heather Downing
-Technical focus in .Net, mobile and JS
-Experience working with Fortune 500
companies
-Speaker and entrepreneur
-Horseback Archery Competitor
-Tolkien Enthusiast
-Avid Star Trek Fan
@quorralyne
DigitalLightCycle.Blogspot.com
quorralyne@gmail.com
Overview
Xamarin Framework Introduction
1. Cross platform native compiled definition
2. Hardware required
3. Development environments
4. Shared code options
5. Xamarin Forms library
6. Architectural approach
7. Install prerequisites
8. Emulators and debugging tools
Working With Xamarin
 Using Xamarin Studio
 Using Nuget
 Xamarin Components
 PCL approach
 Shared library approach
 Xamarin Forms approach
 Troubleshooting
 Additional Resources
Xamarin Framework Introduction
Session Overview
“
”
Xamarin is unique in this space by offering a single
language – C#, class library, and runtime that works
across all three mobile platforms of iOS, Android,
and Windows Phone....while still compiling native
(non-interpreted) applications that are performant
enough even for demanding games.
HTTP://DEVELOPER.XAMARIN.COM
1. Cross platform native compiled definition
Xamarin Architectural Flow
2. Hardware Required
NOTE:
• To develop for iOS on Windows computers there must be a Mac computer accessible on the network, for
remote compilation and debugging. This also works if you have Visual Studio running inside a Windows VM on
a Mac computer.
IOS Build Host / Xamarin Mac Agent
Xamarin.iOS for Visual Studio accomplishes an
amazing feat: it lets you create, build, and debug
iOS applications on a Windows computer using
the Visual Studio IDE.
In order to run the iOS emulator or install on an
Apple device, an .ipa file must be created.
An .ipa file is an iOS application archive file which
stores an iOS app. Each .ipa file includes a binary
for the ARM architecture and can only be installed
on an iOS-device.
3. Development Environments
Xamarin Studio
Xamarin Studio is a modern, sophisticated IDE with many features for creating iOS,
Mac and Android applications. It includes a rich editor, debugging, native platform
integration with iOS, Mac and Android, and integrated source control to name just of
few of its many features.
-Available to all subscription levels
-Can be used on a Mac or a PC
Visual Studio + Xamarin Plugin
Developers familiar with Visual Studio can leverage existing skills and increase
productivity by developing for Xamarin with Visual Studio. Visual Studio support also
means that applications sharing code between iOS, Android, and Windows can be
developed in the same IDE.
-Available to Business subscription level and above
-Can be used ONLY on PC
4. Shared Code Options
Portable Class Library (PCL)
Portable Class Libraries allow you to write code and produce libraries that
can be shared across multiple platforms including Xamarin.iOS,
Xamarin.Android and Windows Phone. Portable Class Libraries (PCLs) can be
created in both Xamarin Studio and Visual Studio, and then referenced in
each platform-specific project to allow code to be easily shared.
BENEFITS
• Allows you to share code across multiple projects.
• Refactoring operations always update all affected references.
DISADVANTAGES
• Cannot use compiler directives.
• Only a subset of the .NET framework is available to use, determined by the profile selected.
Shared Project
Benefits
• Allows you to share code across multiple projects.
• Shared code can be branched based on the platform using compiler directives
(eg. using #if __ANDROID__).
• Application projects can include platform-specific references that the shared code can utilize.
Disadvantages
• Unlike most other project types, a Shared Project has no 'output' assembly. During compilation, the files
are treated as part of the referencing project and compiled into that DLL. If you wish to share your code as
a DLL then Portable Class Libraries are a better solution.
• Refactorings that affect code inside 'inactive' compiler directives will not update the code.
5. Xamarin Forms Library
6. Architectural Approach
7. Install Prerequisites
Update Android SDK
 Run the Android SDK Manager as an Administrator
 Install at least the latest three Android SDK Build tools
 Install ALL the files listed under the latest API version (6.0)
 Run Xamarin Studio as an Administrator
 Set the target framework to be the latest version
8. Emulators and Debugging Tools
Install Xamarin Android Player
The Xamarin Android Player relies on virtualization and OpenGL. This means that it cannot run inside
virtual machine instances nor can it work over Remote Desktop or VNC.
For OSX, Windows 7, Windows 8, and Windows 8.1, the Xamarin Android Player requires VirtualBox
4.3.18 or higher, which will be installed or updated as necessary. For Windows 10, you must upgrade
VirtualBox to version 5.0.2 or higher.
https://developer.xamarin.com/guides/android/getting_started/installation/android-player/
Install Emulator
API versions
Bring down several sizes of each
version of Android for better testing
of what your application looks like
BREAK
Intro to Building Mobile Apps with Xamarin
Working with Xamarin
Live Coding Session
Using Xamarin Studio
Additional Resources
Xamarin Overview: https://developer.xamarin.com/guides/cross-
platform/application_fundamentals/building_cross_platform_applications/part_1_-
_understanding_the_xamarin_mobile_platform/
System Requirements: https://developer.xamarin.com/guides/cross-platform/getting_started/requirements/
Xamarin PCL vs Shared Project Article: http://hotkrossbits.com/2015/05/03/xamarin-forms-pcl-vs-shared-
project/
Xamarin Code Sharing Options: https://docs.xamarin.com/guides/cross-
platform/application_fundamentals/building_cross_platform_applications/sharing_code_options/
Using Xamarin Forms: https://developer.xamarin.com/guides/xamarin-forms/web-services/consuming/rest/
Xamarin Forms Dependencies for Android: http://screencast.com/t/U5FBj6KlH
Xamarin Android Player Installation:
https://developer.xamarin.com/guides/android/getting_started/installation/android-player/
Thank You
QUORRALYNE@GMAIL.COM
@QUORRALYNE

More Related Content

What's hot

Introduction to Xamarin
Introduction to XamarinIntroduction to Xamarin
Introduction to Xamarin
Guy Barrette
 
Cross Platform Mobile Development with C# and Xamarin
Cross Platform Mobile Development with C# and XamarinCross Platform Mobile Development with C# and Xamarin
Cross Platform Mobile Development with C# and Xamarin
KMS Technology
 
C# everywhere: Xamarin and cross platform development
C# everywhere: Xamarin and cross platform developmentC# everywhere: Xamarin and cross platform development
C# everywhere: Xamarin and cross platform development
Gill Cleeren
 
Mobile Cross-Platform App Development in C# with Xamarin
Mobile Cross-Platform App Development in C# with XamarinMobile Cross-Platform App Development in C# with Xamarin
Mobile Cross-Platform App Development in C# with Xamarin
Nick Landry
 
Introduction to xamarin
Introduction to xamarinIntroduction to xamarin
Introduction to xamarin
Prabhat gangwar
 
Developing Cross-platform Native Apps with Xamarin
Developing Cross-platform Native Apps with XamarinDeveloping Cross-platform Native Apps with Xamarin
Developing Cross-platform Native Apps with Xamarin
danhermes
 
Native i os, android, and windows development in c# with xamarin 4
Native i os, android, and windows development in c# with xamarin 4Native i os, android, and windows development in c# with xamarin 4
Native i os, android, and windows development in c# with xamarin 4
Xamarin
 
Building hybrid apps with Xamarin, Ryan Paul
Building hybrid apps with Xamarin, Ryan PaulBuilding hybrid apps with Xamarin, Ryan Paul
Building hybrid apps with Xamarin, Ryan PaulXamarin
 
Cross Platform Development with Xamarin
Cross Platform Development with XamarinCross Platform Development with Xamarin
Cross Platform Development with Xamarin
bryan costanich
 
Introduction to Xamarin
Introduction to XamarinIntroduction to Xamarin
Introduction to Xamarin
Vinicius Quaiato
 
Introduction to xamarin
Introduction to xamarinIntroduction to xamarin
Introduction to xamarin
Alejandro Ruiz Varela
 
Introduction to Xamarin
Introduction to XamarinIntroduction to Xamarin
Introduction to Xamarin
Brian Anderson
 
Introduction to Xamarin - Confoo 2015
Introduction to Xamarin - Confoo 2015Introduction to Xamarin - Confoo 2015
Introduction to Xamarin - Confoo 2015
Guy Barrette
 
Cross Platform Development with Xamarin
Cross Platform Development with XamarinCross Platform Development with Xamarin
Cross Platform Development with Xamarin
Xpand IT
 
Xamarin Platform
Xamarin PlatformXamarin Platform
Xamarin Platform
Rui Marinho
 
Highlights from the Xamarin Evolve 2016 conference
Highlights from the Xamarin Evolve 2016 conferenceHighlights from the Xamarin Evolve 2016 conference
Highlights from the Xamarin Evolve 2016 conference
Christopher Miller
 
Xamarin.Forms
Xamarin.FormsXamarin.Forms
Xamarin.Forms
marcofolio
 
Cross-platform Mobile Development
Cross-platform Mobile DevelopmentCross-platform Mobile Development
Cross-platform Mobile Development
Xamarin
 
Xamarin 4 - the future of apps
Xamarin 4  - the future of appsXamarin 4  - the future of apps
Xamarin 4 - the future of apps
James Montemagno
 

What's hot (20)

Introduction to Xamarin
Introduction to XamarinIntroduction to Xamarin
Introduction to Xamarin
 
Cross Platform Mobile Development with C# and Xamarin
Cross Platform Mobile Development with C# and XamarinCross Platform Mobile Development with C# and Xamarin
Cross Platform Mobile Development with C# and Xamarin
 
C# everywhere: Xamarin and cross platform development
C# everywhere: Xamarin and cross platform developmentC# everywhere: Xamarin and cross platform development
C# everywhere: Xamarin and cross platform development
 
Mobile Cross-Platform App Development in C# with Xamarin
Mobile Cross-Platform App Development in C# with XamarinMobile Cross-Platform App Development in C# with Xamarin
Mobile Cross-Platform App Development in C# with Xamarin
 
Introduction to xamarin
Introduction to xamarinIntroduction to xamarin
Introduction to xamarin
 
Developing Cross-platform Native Apps with Xamarin
Developing Cross-platform Native Apps with XamarinDeveloping Cross-platform Native Apps with Xamarin
Developing Cross-platform Native Apps with Xamarin
 
Native i os, android, and windows development in c# with xamarin 4
Native i os, android, and windows development in c# with xamarin 4Native i os, android, and windows development in c# with xamarin 4
Native i os, android, and windows development in c# with xamarin 4
 
Building hybrid apps with Xamarin, Ryan Paul
Building hybrid apps with Xamarin, Ryan PaulBuilding hybrid apps with Xamarin, Ryan Paul
Building hybrid apps with Xamarin, Ryan Paul
 
An introduction to Xamarin
An introduction to XamarinAn introduction to Xamarin
An introduction to Xamarin
 
Cross Platform Development with Xamarin
Cross Platform Development with XamarinCross Platform Development with Xamarin
Cross Platform Development with Xamarin
 
Introduction to Xamarin
Introduction to XamarinIntroduction to Xamarin
Introduction to Xamarin
 
Introduction to xamarin
Introduction to xamarinIntroduction to xamarin
Introduction to xamarin
 
Introduction to Xamarin
Introduction to XamarinIntroduction to Xamarin
Introduction to Xamarin
 
Introduction to Xamarin - Confoo 2015
Introduction to Xamarin - Confoo 2015Introduction to Xamarin - Confoo 2015
Introduction to Xamarin - Confoo 2015
 
Cross Platform Development with Xamarin
Cross Platform Development with XamarinCross Platform Development with Xamarin
Cross Platform Development with Xamarin
 
Xamarin Platform
Xamarin PlatformXamarin Platform
Xamarin Platform
 
Highlights from the Xamarin Evolve 2016 conference
Highlights from the Xamarin Evolve 2016 conferenceHighlights from the Xamarin Evolve 2016 conference
Highlights from the Xamarin Evolve 2016 conference
 
Xamarin.Forms
Xamarin.FormsXamarin.Forms
Xamarin.Forms
 
Cross-platform Mobile Development
Cross-platform Mobile DevelopmentCross-platform Mobile Development
Cross-platform Mobile Development
 
Xamarin 4 - the future of apps
Xamarin 4  - the future of appsXamarin 4  - the future of apps
Xamarin 4 - the future of apps
 

Similar to Intro to Building Mobile Apps with Xamarin

Xamarin Open House talk - Sela Group - Ofir Makmal
Xamarin Open House talk - Sela Group - Ofir MakmalXamarin Open House talk - Sela Group - Ofir Makmal
Xamarin Open House talk - Sela Group - Ofir Makmal
Ofir Makmal
 
Xamarin for (not only) Android developers
Xamarin for (not only) Android developersXamarin for (not only) Android developers
Xamarin for (not only) Android developers
Aleksander Piotrowski
 
Xamarin Platform
Xamarin PlatformXamarin Platform
Xamarin Platform
Liddle Fang
 
Introduction to xamarin
Introduction to xamarin  Introduction to xamarin
Introduction to xamarin
Sumantro Mukherjee
 
Apps development for mobile devices
Apps development for mobile devicesApps development for mobile devices
Apps development for mobile devices
rdresler
 
Xamarin Development
Xamarin DevelopmentXamarin Development
Xamarin Development
Alper Ebicoglu
 
C# no bolso - desenvolvendo apps multiplataforma
C# no bolso - desenvolvendo apps multiplataformaC# no bolso - desenvolvendo apps multiplataforma
C# no bolso - desenvolvendo apps multiplataforma
Allan Cleysson
 
Xamarin the good, the bad and the ugly
Xamarin  the good, the bad and the uglyXamarin  the good, the bad and the ugly
Xamarin the good, the bad and the ugly
Azilen Technologies Pvt. Ltd.
 
C# everywhere
C# everywhereC# everywhere
C# everywhere
Craig Dunn
 
Introduction to xamarin
Introduction to xamarinIntroduction to xamarin
Introduction to xamarin
Daniel Fikre
 
Cross-Platform Mobile Development using Visual Studio and Xamarin
Cross-Platform Mobile Development using Visual Studio and XamarinCross-Platform Mobile Development using Visual Studio and Xamarin
Cross-Platform Mobile Development using Visual Studio and Xamarin
Shravan Kumar Kasagoni
 
Xamarin Best Cross Platform Mobile App Development Solution
Xamarin Best Cross Platform Mobile App Development SolutionXamarin Best Cross Platform Mobile App Development Solution
Xamarin Best Cross Platform Mobile App Development Solution
Ramin mohmaad hoseini
 
Designing mobile applications with xamarin
Designing mobile applications with xamarinDesigning mobile applications with xamarin
Designing mobile applications with xamarin
Jerel Hass
 
Building Mobile Cross-Platform Apps for iOS, Android & Windows in C# with Xam...
Building Mobile Cross-Platform Apps foriOS, Android & Windows in C# with Xam...Building Mobile Cross-Platform Apps foriOS, Android & Windows in C# with Xam...
Building Mobile Cross-Platform Apps for iOS, Android & Windows in C# with Xam...
Nick Landry
 
Xamarin Mobile App Development Features & Benefits.pdf
Xamarin Mobile App Development Features & Benefits.pdfXamarin Mobile App Development Features & Benefits.pdf
Xamarin Mobile App Development Features & Benefits.pdf
FuGenx Technologies
 
Introduction to cross platform natitve mobile development with c# and xamarin
Introduction to cross platform natitve mobile development with c# and xamarinIntroduction to cross platform natitve mobile development with c# and xamarin
Introduction to cross platform natitve mobile development with c# and xamarin
James Montemagno
 
Introduction to Cross Platform Natitve Mobile Development with C# and Xamarin
Introduction to Cross Platform Natitve Mobile Development with C# and XamarinIntroduction to Cross Platform Natitve Mobile Development with C# and Xamarin
Introduction to Cross Platform Natitve Mobile Development with C# and Xamarin
James Montemagno
 
Why Use Xamarin for Mobile App Development.pptx
Why Use Xamarin for Mobile App Development.pptxWhy Use Xamarin for Mobile App Development.pptx
Why Use Xamarin for Mobile App Development.pptx
Edwardallen40
 
Mono for Android... for Google Devs
Mono for Android... for Google DevsMono for Android... for Google Devs
Mono for Android... for Google Devs
Craig Dunn
 

Similar to Intro to Building Mobile Apps with Xamarin (20)

Xamarin Open House talk - Sela Group - Ofir Makmal
Xamarin Open House talk - Sela Group - Ofir MakmalXamarin Open House talk - Sela Group - Ofir Makmal
Xamarin Open House talk - Sela Group - Ofir Makmal
 
Xamarin for (not only) Android developers
Xamarin for (not only) Android developersXamarin for (not only) Android developers
Xamarin for (not only) Android developers
 
Xamarin Platform
Xamarin PlatformXamarin Platform
Xamarin Platform
 
Introduction to xamarin
Introduction to xamarin  Introduction to xamarin
Introduction to xamarin
 
Apps development for mobile devices
Apps development for mobile devicesApps development for mobile devices
Apps development for mobile devices
 
Xamarin Development
Xamarin DevelopmentXamarin Development
Xamarin Development
 
C# no bolso - desenvolvendo apps multiplataforma
C# no bolso - desenvolvendo apps multiplataformaC# no bolso - desenvolvendo apps multiplataforma
C# no bolso - desenvolvendo apps multiplataforma
 
Xamarin the good, the bad and the ugly
Xamarin  the good, the bad and the uglyXamarin  the good, the bad and the ugly
Xamarin the good, the bad and the ugly
 
C# everywhere
C# everywhereC# everywhere
C# everywhere
 
Introduction to xamarin
Introduction to xamarinIntroduction to xamarin
Introduction to xamarin
 
Cross-Platform Mobile Development using Visual Studio and Xamarin
Cross-Platform Mobile Development using Visual Studio and XamarinCross-Platform Mobile Development using Visual Studio and Xamarin
Cross-Platform Mobile Development using Visual Studio and Xamarin
 
Introduction to xamarin
Introduction to xamarinIntroduction to xamarin
Introduction to xamarin
 
Xamarin Best Cross Platform Mobile App Development Solution
Xamarin Best Cross Platform Mobile App Development SolutionXamarin Best Cross Platform Mobile App Development Solution
Xamarin Best Cross Platform Mobile App Development Solution
 
Designing mobile applications with xamarin
Designing mobile applications with xamarinDesigning mobile applications with xamarin
Designing mobile applications with xamarin
 
Building Mobile Cross-Platform Apps for iOS, Android & Windows in C# with Xam...
Building Mobile Cross-Platform Apps foriOS, Android & Windows in C# with Xam...Building Mobile Cross-Platform Apps foriOS, Android & Windows in C# with Xam...
Building Mobile Cross-Platform Apps for iOS, Android & Windows in C# with Xam...
 
Xamarin Mobile App Development Features & Benefits.pdf
Xamarin Mobile App Development Features & Benefits.pdfXamarin Mobile App Development Features & Benefits.pdf
Xamarin Mobile App Development Features & Benefits.pdf
 
Introduction to cross platform natitve mobile development with c# and xamarin
Introduction to cross platform natitve mobile development with c# and xamarinIntroduction to cross platform natitve mobile development with c# and xamarin
Introduction to cross platform natitve mobile development with c# and xamarin
 
Introduction to Cross Platform Natitve Mobile Development with C# and Xamarin
Introduction to Cross Platform Natitve Mobile Development with C# and XamarinIntroduction to Cross Platform Natitve Mobile Development with C# and Xamarin
Introduction to Cross Platform Natitve Mobile Development with C# and Xamarin
 
Why Use Xamarin for Mobile App Development.pptx
Why Use Xamarin for Mobile App Development.pptxWhy Use Xamarin for Mobile App Development.pptx
Why Use Xamarin for Mobile App Development.pptx
 
Mono for Android... for Google Devs
Mono for Android... for Google DevsMono for Android... for Google Devs
Mono for Android... for Google Devs
 

More from Heather Downing

Defensive Coding Bootcamp
Defensive Coding BootcampDefensive Coding Bootcamp
Defensive Coding Bootcamp
Heather Downing
 
The Care and Feeding of Software Engineers
The Care and Feeding of Software EngineersThe Care and Feeding of Software Engineers
The Care and Feeding of Software Engineers
Heather Downing
 
The Care and Feeding of Software Engineers
The Care and Feeding of Software EngineersThe Care and Feeding of Software Engineers
The Care and Feeding of Software Engineers
Heather Downing
 
The Visible Developer: Why you shouldn't blend in
The Visible Developer: Why you shouldn't blend inThe Visible Developer: Why you shouldn't blend in
The Visible Developer: Why you shouldn't blend in
Heather Downing
 
Technology is Easy, People are Hard
Technology is Easy, People are HardTechnology is Easy, People are Hard
Technology is Easy, People are Hard
Heather Downing
 
Google vs Alexa: Battle of the Bots
Google vs Alexa: Battle of the BotsGoogle vs Alexa: Battle of the Bots
Google vs Alexa: Battle of the Bots
Heather Downing
 
Speak To Me: Voice Development Practices
Speak To Me: Voice Development PracticesSpeak To Me: Voice Development Practices
Speak To Me: Voice Development Practices
Heather Downing
 
Speak To Me: Developing for brands with voice interfaces
Speak To Me: Developing for brands with voice interfacesSpeak To Me: Developing for brands with voice interfaces
Speak To Me: Developing for brands with voice interfaces
Heather Downing
 
Alexa Skills Kit with Web API on Azure
Alexa Skills Kit with Web API on AzureAlexa Skills Kit with Web API on Azure
Alexa Skills Kit with Web API on Azure
Heather Downing
 
Augmented reality intro for mobile apps
Augmented reality intro for mobile appsAugmented reality intro for mobile apps
Augmented reality intro for mobile apps
Heather Downing
 
Workshop: Building location-aware mobile apps with iBeacons
Workshop: Building location-aware mobile apps with iBeaconsWorkshop: Building location-aware mobile apps with iBeacons
Workshop: Building location-aware mobile apps with iBeacons
Heather Downing
 
Imposter Syndrome: Overcoming Self-Doubt in Success
Imposter Syndrome: Overcoming Self-Doubt in SuccessImposter Syndrome: Overcoming Self-Doubt in Success
Imposter Syndrome: Overcoming Self-Doubt in Success
Heather Downing
 
Building Location Aware Mobile Apps with iBeacons
Building Location Aware Mobile Apps with iBeaconsBuilding Location Aware Mobile Apps with iBeacons
Building Location Aware Mobile Apps with iBeacons
Heather Downing
 
ESKCSW Presentation - Nov 2013
ESKCSW Presentation - Nov 2013ESKCSW Presentation - Nov 2013
ESKCSW Presentation - Nov 2013
Heather Downing
 

More from Heather Downing (14)

Defensive Coding Bootcamp
Defensive Coding BootcampDefensive Coding Bootcamp
Defensive Coding Bootcamp
 
The Care and Feeding of Software Engineers
The Care and Feeding of Software EngineersThe Care and Feeding of Software Engineers
The Care and Feeding of Software Engineers
 
The Care and Feeding of Software Engineers
The Care and Feeding of Software EngineersThe Care and Feeding of Software Engineers
The Care and Feeding of Software Engineers
 
The Visible Developer: Why you shouldn't blend in
The Visible Developer: Why you shouldn't blend inThe Visible Developer: Why you shouldn't blend in
The Visible Developer: Why you shouldn't blend in
 
Technology is Easy, People are Hard
Technology is Easy, People are HardTechnology is Easy, People are Hard
Technology is Easy, People are Hard
 
Google vs Alexa: Battle of the Bots
Google vs Alexa: Battle of the BotsGoogle vs Alexa: Battle of the Bots
Google vs Alexa: Battle of the Bots
 
Speak To Me: Voice Development Practices
Speak To Me: Voice Development PracticesSpeak To Me: Voice Development Practices
Speak To Me: Voice Development Practices
 
Speak To Me: Developing for brands with voice interfaces
Speak To Me: Developing for brands with voice interfacesSpeak To Me: Developing for brands with voice interfaces
Speak To Me: Developing for brands with voice interfaces
 
Alexa Skills Kit with Web API on Azure
Alexa Skills Kit with Web API on AzureAlexa Skills Kit with Web API on Azure
Alexa Skills Kit with Web API on Azure
 
Augmented reality intro for mobile apps
Augmented reality intro for mobile appsAugmented reality intro for mobile apps
Augmented reality intro for mobile apps
 
Workshop: Building location-aware mobile apps with iBeacons
Workshop: Building location-aware mobile apps with iBeaconsWorkshop: Building location-aware mobile apps with iBeacons
Workshop: Building location-aware mobile apps with iBeacons
 
Imposter Syndrome: Overcoming Self-Doubt in Success
Imposter Syndrome: Overcoming Self-Doubt in SuccessImposter Syndrome: Overcoming Self-Doubt in Success
Imposter Syndrome: Overcoming Self-Doubt in Success
 
Building Location Aware Mobile Apps with iBeacons
Building Location Aware Mobile Apps with iBeaconsBuilding Location Aware Mobile Apps with iBeacons
Building Location Aware Mobile Apps with iBeacons
 
ESKCSW Presentation - Nov 2013
ESKCSW Presentation - Nov 2013ESKCSW Presentation - Nov 2013
ESKCSW Presentation - Nov 2013
 

Recently uploaded

De mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FMEDe mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FME
Jelle | Nordend
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
vrstrong314
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Anthony Dahanne
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Shahin Sheidaei
 
Software Testing Exam imp Ques Notes.pdf
Software Testing Exam imp Ques Notes.pdfSoftware Testing Exam imp Ques Notes.pdf
Software Testing Exam imp Ques Notes.pdf
MayankTawar1
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
informapgpstrackings
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
Globus
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2
 
Designing for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web ServicesDesigning for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web Services
KrzysztofKkol1
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
wottaspaceseo
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke
 
Using IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New ZealandUsing IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New Zealand
IES VE
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Globus
 
Visitor Management System in India- Vizman.app
Visitor Management System in India- Vizman.appVisitor Management System in India- Vizman.app
Visitor Management System in India- Vizman.app
NaapbooksPrivateLimi
 
Strategies for Successful Data Migration Tools.pptx
Strategies for Successful Data Migration Tools.pptxStrategies for Successful Data Migration Tools.pptx
Strategies for Successful Data Migration Tools.pptx
varshanayak241
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
Globus
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
AMB-Review
 

Recently uploaded (20)

De mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FMEDe mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FME
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
 
Software Testing Exam imp Ques Notes.pdf
Software Testing Exam imp Ques Notes.pdfSoftware Testing Exam imp Ques Notes.pdf
Software Testing Exam imp Ques Notes.pdf
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
Designing for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web ServicesDesigning for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web Services
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
 
Using IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New ZealandUsing IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New Zealand
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
 
Visitor Management System in India- Vizman.app
Visitor Management System in India- Vizman.appVisitor Management System in India- Vizman.app
Visitor Management System in India- Vizman.app
 
Strategies for Successful Data Migration Tools.pptx
Strategies for Successful Data Migration Tools.pptxStrategies for Successful Data Migration Tools.pptx
Strategies for Successful Data Migration Tools.pptx
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
 

Intro to Building Mobile Apps with Xamarin

  • 1. Intro to Building Mobile Apps with Xamarin HEATHER DOWNING
  • 2. Heather Downing -Technical focus in .Net, mobile and JS -Experience working with Fortune 500 companies -Speaker and entrepreneur -Horseback Archery Competitor -Tolkien Enthusiast -Avid Star Trek Fan @quorralyne DigitalLightCycle.Blogspot.com quorralyne@gmail.com
  • 3. Overview Xamarin Framework Introduction 1. Cross platform native compiled definition 2. Hardware required 3. Development environments 4. Shared code options 5. Xamarin Forms library 6. Architectural approach 7. Install prerequisites 8. Emulators and debugging tools Working With Xamarin  Using Xamarin Studio  Using Nuget  Xamarin Components  PCL approach  Shared library approach  Xamarin Forms approach  Troubleshooting  Additional Resources
  • 5. “ ” Xamarin is unique in this space by offering a single language – C#, class library, and runtime that works across all three mobile platforms of iOS, Android, and Windows Phone....while still compiling native (non-interpreted) applications that are performant enough even for demanding games. HTTP://DEVELOPER.XAMARIN.COM
  • 6. 1. Cross platform native compiled definition
  • 9. NOTE: • To develop for iOS on Windows computers there must be a Mac computer accessible on the network, for remote compilation and debugging. This also works if you have Visual Studio running inside a Windows VM on a Mac computer.
  • 10. IOS Build Host / Xamarin Mac Agent Xamarin.iOS for Visual Studio accomplishes an amazing feat: it lets you create, build, and debug iOS applications on a Windows computer using the Visual Studio IDE. In order to run the iOS emulator or install on an Apple device, an .ipa file must be created. An .ipa file is an iOS application archive file which stores an iOS app. Each .ipa file includes a binary for the ARM architecture and can only be installed on an iOS-device.
  • 12. Xamarin Studio Xamarin Studio is a modern, sophisticated IDE with many features for creating iOS, Mac and Android applications. It includes a rich editor, debugging, native platform integration with iOS, Mac and Android, and integrated source control to name just of few of its many features. -Available to all subscription levels -Can be used on a Mac or a PC
  • 13. Visual Studio + Xamarin Plugin Developers familiar with Visual Studio can leverage existing skills and increase productivity by developing for Xamarin with Visual Studio. Visual Studio support also means that applications sharing code between iOS, Android, and Windows can be developed in the same IDE. -Available to Business subscription level and above -Can be used ONLY on PC
  • 14. 4. Shared Code Options
  • 15. Portable Class Library (PCL) Portable Class Libraries allow you to write code and produce libraries that can be shared across multiple platforms including Xamarin.iOS, Xamarin.Android and Windows Phone. Portable Class Libraries (PCLs) can be created in both Xamarin Studio and Visual Studio, and then referenced in each platform-specific project to allow code to be easily shared.
  • 16. BENEFITS • Allows you to share code across multiple projects. • Refactoring operations always update all affected references. DISADVANTAGES • Cannot use compiler directives. • Only a subset of the .NET framework is available to use, determined by the profile selected.
  • 17. Shared Project Benefits • Allows you to share code across multiple projects. • Shared code can be branched based on the platform using compiler directives (eg. using #if __ANDROID__). • Application projects can include platform-specific references that the shared code can utilize. Disadvantages • Unlike most other project types, a Shared Project has no 'output' assembly. During compilation, the files are treated as part of the referencing project and compiled into that DLL. If you wish to share your code as a DLL then Portable Class Libraries are a better solution. • Refactorings that affect code inside 'inactive' compiler directives will not update the code.
  • 18.
  • 19. 5. Xamarin Forms Library
  • 22. Update Android SDK  Run the Android SDK Manager as an Administrator  Install at least the latest three Android SDK Build tools  Install ALL the files listed under the latest API version (6.0)  Run Xamarin Studio as an Administrator  Set the target framework to be the latest version
  • 23. 8. Emulators and Debugging Tools
  • 24. Install Xamarin Android Player The Xamarin Android Player relies on virtualization and OpenGL. This means that it cannot run inside virtual machine instances nor can it work over Remote Desktop or VNC. For OSX, Windows 7, Windows 8, and Windows 8.1, the Xamarin Android Player requires VirtualBox 4.3.18 or higher, which will be installed or updated as necessary. For Windows 10, you must upgrade VirtualBox to version 5.0.2 or higher. https://developer.xamarin.com/guides/android/getting_started/installation/android-player/
  • 25. Install Emulator API versions Bring down several sizes of each version of Android for better testing of what your application looks like
  • 26. BREAK Intro to Building Mobile Apps with Xamarin
  • 27. Working with Xamarin Live Coding Session
  • 29. Additional Resources Xamarin Overview: https://developer.xamarin.com/guides/cross- platform/application_fundamentals/building_cross_platform_applications/part_1_- _understanding_the_xamarin_mobile_platform/ System Requirements: https://developer.xamarin.com/guides/cross-platform/getting_started/requirements/ Xamarin PCL vs Shared Project Article: http://hotkrossbits.com/2015/05/03/xamarin-forms-pcl-vs-shared- project/ Xamarin Code Sharing Options: https://docs.xamarin.com/guides/cross- platform/application_fundamentals/building_cross_platform_applications/sharing_code_options/ Using Xamarin Forms: https://developer.xamarin.com/guides/xamarin-forms/web-services/consuming/rest/ Xamarin Forms Dependencies for Android: http://screencast.com/t/U5FBj6KlH Xamarin Android Player Installation: https://developer.xamarin.com/guides/android/getting_started/installation/android-player/