azure mobileapp & xamarin.forms
Post on 19-Feb-2017
317 Views
Preview:
TRANSCRIPT
Xamarin & Azure Mobile AppsAlessandro Pozone
@TPOZ1
XamarinStudentPartner
MOBILE APPS ARCHITECTURES
Silo Approach
Nosharedcode•Manylanguages&developmentenvironments•Multipleteams
iOS
Objective-CXcode
Android
JavaAndroidStudio
Windows
C#VisualStudio
Write Once, Run Anywhere
AppGenerator
LuaJavascript
ActionscriptHTML+CSS
LimitednativeAPIaccess•Slowperformance•Pooruserexperience
Xamarin’s Unique Approach
SharedC#codebase•100%nativeAPIaccess•Highperformance
iOSC#UI WindowsC#UIAndroidC#UI
SharedC#
C#
Microsoft.Phone Microsoft.Networking Windows.Storage Windows.Foundation Microsoft.Devices
System.Data System.Windows System.Numerics System.Core System.ServiceModel
System.Net System System.IO System.Linq System.Xml
Windows APIs
MapKit UIKit iBeacon CoreGraphics CoreMotion
System.Data System.Windows System.Numerics System.Core System.ServiceModel
System.Net System System.IO System.Linq System.Xml
C#
iOS APIs
Text-to-speech ActionBar PrintingFramework Renderscript NFC
System.Data System.Windows System.Numerics System.Core System.ServiceModel
System.Net System System.IO System.Linq System.Xml
C#
Android APIs
XAMARIN.IOS does full Ahead Of Time(AOT) compilation to produce an ARMbinary for Apple’s App Store.
XAMARIN.ANDROID takes advantageof Just In Time (JIT) compilation on theAndroid device.
.NET
C# Compileand Link .APK
Bindings
RunsNatively
IL+
JIT
Native Performance
.NET
C# Compileand Link .APK
Bindings
RunsNatively
IL+
JITAOT .APP
ARM BINARY
Runs Natively
ANYTHING YOU CAN DO IN OBJECTIVE-C, SWIFT, OR JAVA CAN BE DONE IN C# WITH XAMARIN
XAMARIN FORMS
Build native UIs for iOS, Android, and Windows Phone from a single, shared C# codebase.
XAMARIN.FORMS
Xamarin + Xamarin.Forms
TraditionalXamarinApproach WithXamarin.Forms:More code-sharing, all native
iOSC#UI WindowsC#UIAndroidC#UI
SharedC#Backend
SharedUICode
SharedC#Backend
Native UI from shared code<xml version="1.0" encoding="UTF-8"?>
<TabbedPage xmlns="http://xamarin.com/schemas/2014/forms"xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"x:Class="MyApp.MainPage">
<TabbedPage.Children><ContentPage Title="Profile" Icon="Profile.png">
<StackLayout Spacing="20" Padding="20"VerticalOptions="Center">
<Entry Placeholder="Username"Text="{Binding Username}"/>
<Entry Placeholder="Password"Text="{Binding Password}"IsPassword="true"/>
<Button Text="Login" TextColor="White"BackgroundColor="#77D065"Command="{Binding LoginCommand}"/>
</StackLayout></ContentPage><ContentPage Title="Settings" Icon="Settings.png">
<!-- Settings --></ContentPage>
</TabbedPage.Children></TabbedPage>
</xml>
Xamarin.Forms is best for: Xamarin.iOS / Xamarin.Android is best for:
• Data entry apps
• Prototypes and proofs-of-concept
• Apps that require little platform-specific functionality
• Apps where code sharing is more important than custom UI
Learn more: xamarin.com/forms Learn more: xamarin.com/platform
• Apps that require specialized interaction
• Apps with highly polished design
• Apps that use many platform-specific APIs
• Apps where custom UI is more important than code sharing
Which Xamarin approach is best for your app?
AccelerateyourmobiledevelopmentjourneywiththisbooklegendaryCharlesPetzold
Learneverythingfromintroductoryconceptstoadvancedtopicslikeaddingcustomviewsandusingplatform-specificfeatures
100%FREE
AZURE MOBILE APPS
Storage
Authentication
Push
What is Mobile Services?
STORAGE
Structured Storage
Powered by SQL DatabaseSupports rich querying capabilitiesData management in:• Azure Portal• SQL Portal (Silverlight)• SQL Management Studio• REST API• Azure CLI Tools• SQL CLI
PUSH NOTIFICATIONS
Push Notification Flow
AUTHENTICATION
User Auth Flow (client) GOOGLE
MOBILESERVICE
DEVICE
MICROSOFTACCOUNT
AAD
DEMO
top related