Upload
james-montemagno
View
251
Download
1
Embed Size (px)
Citation preview
Who’s this guy… really?
James Montemagno
Developer Evangelist
[email protected] http://motz.codes @JamesMontemagno
Xamarin—A Complete Mobile Solution
Design Develop Integrate
Learn
Xamarin Platform
Test Monitor
Create native iOS, Android, Mac and!Windows apps in Visual Studio and C#!
What is native?
Native User Interfaces Native API Access Native Performance
Mobile Development Approaches
Silo Approach
Build App!Multiple Times!
!
Write-Once-Run-Anywhere Approach
Lowest!Common!
Denominator! Black box
Xamarin’s Unique Approach
Native with!Code Sharing!
How Xamarin Works
Windows APIs
iOS
100% API Coverage
Android
100% APICoverage
Native Performance
Xamarin.iOS does full Ahead Of Time (AOT) compilation to produce an ARM binary for Apple’s App Store.
Xamarin.Android takes advantage of Just In Time (JIT) compilation on the Android device.
Always Up-to-Date
Track record of offering same-day support:iOS 5, iOS 6, iOS 7, iOS 7.1, iOS 8
Full support for:• Google Glass• Android Wear• Amazon Fire TV• Apple Watch• More!
Everything You Love
Anything you can do in Objective-C, Swift, or Java can be done in C# with Xamarin using Visual Studio
Visual Studio – 2010 and Higher
Xamarin Studio – Mac or PC
Xamarin Android Player
High Speed Android Emulator• Mac or PC• Runs side-by-side Windows
Phone EmulatorFree for Xamarin Subscribers:• Xamarin.com/Android-Player
Let’s Build An App
Xamarin Development
Platform Specific Code
UI UI UIGPS, Text To
Speech, Settings, Battery,
Lights, Notifications,
etc…
GPS, Text To Speech,
Settings, Battery, Lights,
Notifications, etc…
GPS, Text To Speech,
Settings, Battery, Lights,
Notifications, etc…
§ Write Less Code
§ Share More Code
Plugins for Xamarin
§ Access Platform Specific APIs from a Common API
§ From Anywhere:§ Single Project§ PCL§ Shared Code
§ github.com/xamarin/plugins
Let’s use a Plugin
Portable Class Libraries
Xamarin + Xamarin.Forms
With Xamarin.Forms: !more code-sharing, native controls!
Traditional Xamarin approach!
Xamarin.Forms!
What’s Included
Xamarin.Forms!
§ 40+ Pages, Layouts, and Controls!§ Build from code behind or XAML!
§ Two-way Data Binding!!§ Navigation!
§ Animation API!
§ Dependency Service!
§ Messaging Center!
Pages
Content MasterDetail Navigation Tabbed Carousel
Layouts
Stack Absolute Relative Grid ContentView ScrollView Frame
Controls
ActivityIndicator! BoxView! Button! DatePicker! Editor!
Entry! Image! Label! ListView! Map!
OpenGLView! Picker! ProgressBar! SearchBar! Slider!
Stepper! TableView! TimePicker! WebView! EntryCell!
ImageCell! SwitchCell! TextCell! ViewCell!
Xamarin.Forms Example
Use a single API to generate native, platform-specific user interfaces
At runtime, each Xamarin.Forms page and its controls are mapped to platform-specific native user interface elements
Let’s take a look
Resources
• MVP Mix Tweets App – http://github.com/jamesmontemagno/mvpmix-‐tweets
• Slides • http://www.slideshare.net/jamesmontemagno
• Plugins for Xamarin • http://github.com/xamarin/plugins
• Component Store • http://components.xamarin.com
• Linq2Twitter • https://linqtotwitter.codeplex.com
Get Started Xamarin.com
Thank you! Q&A
James Montemagno
Developer Evangelist
[email protected] http://motz.codes @JamesMontemagno