Tech Talk - Xamarin - cross-platform mobile apps

Windows PhoneAndriodiOSXamarin
1.0x

Tech Talk - Xamarin - cross-platform mobile apps

By
Created 3 years ago

Duration 0:00:00
lesson view count 60
Select the file type you wish to download
Slide Content
  1. Tech Talk - Xamarin - cross-platform mobile apps in C#

    Slide 1 - Tech Talk - Xamarin - cross-platform mobile apps in C#

    • Štefan Fejes – MS Dynamics CRM & integration specialist
  2. Agenda

    Slide 2 - Agenda

    • Mobile platforms
    • Platform applications
    • Cross-platform development
    • Mobile services
    • LIVE DEMO
    • Tuesday, February 03, 2015
  3. Mobility – mobile platforms

    Slide 3 - Mobility – mobile platforms

    • Devices
    • Smartphones, phablets, tablets, notebooks…
    • Platforms
    • Android
    • iOS
    • Windows
    • Tuesday, February 03, 2015
  4. Why platform native applications

    Slide 4 - Why platform native applications

    • BE ON DEVICES!!!
    • Android
    • Google Play
    • iOS
    • AppStore
    • Windows
    • Windows Store, Windows Phone Store
    • Fast, native, simple to run
    • Money
    • Tuesday, February 03, 2015
  5. Platforms technology overview

    Slide 5 - Platforms technology overview

    • Android – Eclipse, Android studio
    • Java
    • C/C++
    • iOS
    • Swift
    • Objective-C
    • Windows
    • C#
    • Visual Basic
    • Visual F#
    • Python
    • JavaScript
    • C/C++
    • Android
    • iOS
    • Windows
    • Java
    • C/C++
    • C/C++
    • Swift
    • Objective-C
    • C#
    • Visual basic
    • Visual F#
    • Python
    • JavaScript
    • Tuesday, February 03, 2015
  6. How to develop

    Slide 6 - How to develop

    • On Windows
    • Visual Studio
    • Any Windows platform (.NET)
    • Studios for Android
    • Any Android platform (Java)
    • On Mac
    • Xcode
    • iOS and MacOS
    • Windows
    • Mac
    • Java
    • Java
    • .NET Windows, Phone
    • iOS, MacOS
    • Tuesday, February 03, 2015
  7. Cross platform

    Slide 7 - Cross platform

    • MONO – project
    • 2001
    • XIMIAN
    • NOVELL
    • XAMARIN
    • MonoTouch (Xamarin.iOS)
    • MonoAndroid (Xamarin.Android)
    • 170 emp., >15000 cust., >900000 dev.
    • Android
    • Smartphone, tablet, wear, glass…
    • iOS
    • iPhone, iPad, Watch… (Universal app)
    • Windows
    • Phone, tablet, XBOX… (Universal app)
    • Your application in C# (Xamarin Studio)
    • Mono
    • Native platform (Android, iOS)
    • Tuesday, February 03, 2015
  8. XAMARIN

    Slide 8 - XAMARIN

    • Xamarin.iOS
    • Xamarin.Android
    • Xamarin.Forms
    • Visual Studio with Xamarin
    • iOS
    • Android
    • C# code
    • C# code
    • Mono(Touch)
    • Mono(Android)
    • Native ARM assembly
    • Intermediate Language
    • Native assembly when the application launches
    • .app
    • .apk
    • AppStore
    • Google Play
    • Tuesday, February 03, 2015
  9. Xamarin forms

    Slide 9 - Xamarin forms

    • Controls - one UI for all platforms
    • From C# code
    • Platform specific
    • Messaging Center
    • Localization RESX
    • XAML
    • Data binding (MVVM)
    • Page navigation
    • Shared code
    • BL
    • Services
    • NuGet components
    • Microsoft, Xamarin, Google…
    • Tuesday, February 03, 2015
  10. Xamarin Studio - forms

    Slide 10 - Xamarin Studio - forms

    • Tuesday, February 03, 2015
  11. namespace HelloXamarinFormsWorld.Android

    Slide 11 - namespace HelloXamarinFormsWorld.Android

    • {
    • [Activity(Label = "HelloXamarinFormsWorld",
    • MainLauncher = true,
    • ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
    • public class MainActivity : AndroidActivity
    • {
    • protected override void OnCreate(Bundle bundle)
    • {
    • base.OnCreate(bundle);
    • Xamarin.Forms.Forms.Init(this, bundle);
    • SetPage(App.GetMainPage());
    • }
    • }
    • }
    • Xamarin.Forms Page on Each Platform
    • Tuesday, February 03, 2015
  12. [Register("AppDelegate")]

    Slide 12 - [Register("AppDelegate")]

    • public partial class AppDelegate : UIApplicationDelegate
    • {
    • UIWindow window;
    • public override bool FinishedLaunching(UIApplication app, NSDictionary options)
    • {
    • Forms.Init();
    • window = new UIWindow(UIScreen.MainScreen.Bounds);
    • window.RootViewController = App.GetMainPage().CreateViewController();
    • window.MakeKeyAndVisible();
    • return true;
    • }
    • }
    • Xamarin.Forms Page on Each Platform
    • Tuesday, February 03, 2015
  13. public partial class MainPage : PhoneApplicationPage

    Slide 13 - public partial class MainPage : PhoneApplicationPage

    • {
    • public MainPage()
    • {
    • InitializeComponent();
    • Forms.Init();
    • Content = HelloXamarinFormsWorld.App.GetMainPage().ConvertPageToUIElement(this);
    • }
    • }
    • Xamarin.Forms Page on Each Platform
    • Tuesday, February 03, 2015
  14. Xamarin.Forms Page on Each Platform

    Slide 14 - Xamarin.Forms Page on Each Platform

    • public class App
    • {
    • public static Page GetMainPage()
    • {
    • return new ContentPage
    • {
    • Content = new Label
    • {
    • Text = "Hello, Forms !",
    • VerticalOptions = LayoutOptions.CenterAndExpand,
    • HorizontalOptions = LayoutOptions.CenterAndExpand,
    • },
    • };
    • }
    • }
    • Tuesday, February 03, 2015
  15. Xamarin pricing

    Slide 15 - Xamarin pricing

    • Xamarin Studio for OS
    • Xamarin Studio for Windows
    • Xamarin for Visual Studio
    • MacOS
    • iOS
    • iOS
    • Android
    • Android
    • Andriod
    • Windows
    • Windows
    • 300€/year
    • 999€/year
    • Tuesday, February 03, 2015
  16. Conclusion

    Slide 16 - Conclusion

    • Xamarin.Forms
    • For very simple applications
    • Use Mac for
    • Xamarin.iOS & Xamarin.Android
    • Use Visual Studio for Windows for Windows (Phone)
    • Best for all- Xamarin for Visual Studio (>2013)
    • Expensive (999€/year)
    • Need Mac for iOS development (MacMini 450€)
    • Recommendation
    • Buy phone for platforms for testing purposes (1000€)
    • Nexus for Android, iPhone for iOS, Nokia for Windows
    • GEO location, web services, currier testing (2G…LTE)…
    • Tuesday, February 03, 2015
  17. Mobile services

    Slide 17 - Mobile services

    • Windows Azure
    • Mobile services
    • Notification hub
    • Tuesday, February 03, 2015
  18. Live demo

    Slide 18 - Live demo

    • Cross-platform development (Xamarin Studio for OS, Android, iOS)
    • Azure Mobile Services & notification hub
  19. Sources & Q&A

    Slide 19 - Sources & Q&A

    • http://xamarin.com/visual-studio
    • http://xamarin.com/
    • http://azure.microsoft.com/en-us/documentation/services/mobile-services/
    • Tuesday, February 03, 2015