smau milano 2016 - erica barone e lorenzo barbieri, microsoft
TRANSCRIPT
![Page 1: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/1.jpg)
Erica Barone - @_ericabarone
Lorenzo Barbieri - @_geniodelmale
Microsoft Technical Evangelists
Creating iOS, Android,
Windows and Mac apps
with Visual Studio and
Xamarin
![Page 2: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/2.jpg)
Xamarin – Your Complete Mobile Solution
![Page 3: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/3.jpg)
Develop
![Page 4: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/4.jpg)
What is Native?
![Page 5: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/5.jpg)
Silo Approach
iOS WindowsAndroid
Objective-C
Swift
Xcode
C#
Visual Studio
Java
Android Studio
No shared code • Many languages & development environments • Multiple teams
![Page 6: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/6.jpg)
Xamarin + Xamarin.Forms
iOS C# UI Windows C# UIAndroid C# UI
Shared C# Backend
Shared UI Code
Shared C# Backend
![Page 7: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/7.jpg)
Why Xamarin?
Anything you can do in Objective-C, Swift, or Java can be done in C#
and Visual Studio with Xamarin.
![Page 8: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/8.jpg)
Open Source
open.xamarin.com
• Xamarin.iOS
• Xamarin.Mac
• Xamarin.Android
• Xamarin.Forms
• Bindings & Plugins
• Getting Started
• Contribution Guides
![Page 9: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/9.jpg)
Why C#? C# is Awesome
![Page 10: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/10.jpg)
Async programming
// C#
var user = await graphServiceClient.Me.Request().GetAsync();
// Do something...
// Java
graphServiceClient.getMe().buildRequest().get(new ICallback<User>() {
// Do something…
});
// Obj-C
[[[graphServiceClient me] request] getWithCompletion:^(MSGraphUser*user, NSError *error){
// Do something…
}];
![Page 11: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/11.jpg)
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.
![Page 12: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/12.jpg)
✓Always Up-to-
Date
Same-day support:• iOS 5
• iOS 6
• iOS 7
• iOS 7.1
• iOS 8
• iOS 9
• iOS 10
Full support for:• Apple Watch
• Apple TV
• Google Glass
• Android Wear
• Amazon Fire TV
• and much more
![Page 13: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/13.jpg)
Visual Studio Integration
![Page 14: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/14.jpg)
Visual Studio iOS Simulator Remoting
• Multi-Touch Enabled
• Pressure Sensitive
• Super Fast
• Rotate, screenshots,
location changes
• Never leave VS
![Page 15: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/15.jpg)
Visual Studio iOS USB Remoting
![Page 16: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/16.jpg)
Xamarin Studio – Mac
![Page 17: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/17.jpg)
Xamarin Designer for iOS
• World’s first iOS Designer
available in Xamarin Studio
and Visual Studio
• Follows familiar Visual Studio
designer idioms
• Supports all UIKit elements
• Edit custom and 3rd party
components
• Live preview of changes to
properties
• Should be connected to a
Mac
![Page 18: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/18.jpg)
Android Designer
• Available in:
• Xamarin Studio
• Visual Studio
• Create UI with drag &
drop simplicity
• Target multiple screen
sizes, resolutions and
Android versions
• Layouts saved in standard
Android XML files
![Page 19: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/19.jpg)
DEMO
Traditional XAMARIN
![Page 20: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/20.jpg)
Xamarin.Forms
![Page 21: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/21.jpg)
What’s included
✓ 40+ Pages, layouts, and controls
(Build from code behind or XAML)
✓ Two-way data binding
✓ Navigation
✓ Animation API
✓ Dependency Service
✓ Messaging Center
Shared C# Backend
Shared UI Code
![Page 22: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/22.jpg)
DEMO
XAMARIN Forms
![Page 23: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/23.jpg)
Test
![Page 24: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/24.jpg)
On Mobile, Quality is Hard
7
29
20
35
6
OS versions
Devices
Languages
Locales
Screen sizes
9
19K
+
39
57
27
15
6
OS versions
Distinct devices
Languages
Locales
Screen sizes
Manufacturers
Screen
configurations
![Page 25: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/25.jpg)
Tap Scroll Swipe Pinch Multi
Finger
Text Entry Rotation GPS
![Page 26: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/26.jpg)
Introducing Xamarin.UITest
![Page 27: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/27.jpg)
Test Recorder for Visual Studio
• Record UITests from
Visual Studio
• Replay or ship to Test
Cloud
• Use Touch Screen on
Android Emulator
![Page 28: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/28.jpg)
Test Recorder for Mac
• Record UITests for iOS and Android apps
• Replay or ship to Test Cloud
![Page 29: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/29.jpg)
xamarin.com/testcloud
![Page 30: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/30.jpg)
Build
![Page 31: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/31.jpg)
Visual Studio Team Services
• Code
• Work
• Build
• Test
• Release
![Page 32: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/32.jpg)
Visual Studio Team Services - Work
![Page 33: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/33.jpg)
Visual Studio Team Services - Build
![Page 34: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/34.jpg)
Visual Studio Team Services - Test
![Page 35: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/35.jpg)
Visual Studio Team Services - Release
![Page 36: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/36.jpg)
Distribute & Monitor
![Page 37: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/37.jpg)
![Page 38: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/38.jpg)
HockeyApp
![Page 39: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/39.jpg)
Xamarin – Your Complete Mobile Solution
![Page 40: Smau Milano 2016 - Erica Barone e Lorenzo Barbieri, Microsoft](https://reader031.vdocuments.mx/reader031/viewer/2022030304/587876821a28ab497b8b7557/html5/thumbnails/40.jpg)
© 2016 Microsoft Corporation. All rights reserved.