Xamarin Cross Platform Mobile App Development Training with C#
Overview
Learn to build native Cross Platform Mobile Apps for Android, iOS and Windows with C# and the .NET platform using Visual Studio and Xamarin Platform on Windows and Mac OS.
This course is developed for seasoned C# developers who would like to develop mobile apps for the Android, iOS and Windows platform using C# and the .NET platform. By the end of the course, you’ll have the skills to tackle small to intermediate cross platform mobile app development projects.
Duration
The course is full time 10 days. The course is run over a period of 2 weeks, with week 1 covering Android, Week 2 covering iOS and Xamarin Forms.
Programming Experience
Strong programming experience in .NET is a requirement in order to succeed in this course. A minimum of 2 years working experience is recommended or a strong background in computer science.
Technical Skill
You will need to be proficient in working in Visual Studio. A Windows or a Mac environment is used. On a Mac we will use bootcamp if you prefer to use the Visual Studio IDE otherwise we will primarily use Xamarin Studio.
Salary
<div class='paysa-wij' data-max-width='320px' data-params='{"title":"mobile developer","company":"","locality":"","selectable":false,"iframed":null}' data-type='salary'> <p> Discover more salary details for <a href='https://www.paysa.com/salaries/mobile-developer--t?utm_source=widget' target='_blank'>Mobile Developer</a>. Browse salaries by <a href='https://www.paysa.com/salaries-list/title?utm_source=widget' target='_blank'>job title</a>, <a href='https://www.paysa.com/salaries-list/company?utm_source=widget' target='_blank'>company</a>, <a href='https://www.paysa.com/salaries-list/locality?utm_source=widget' target='_blank'>location</a>, <a href='https://www.paysa.com/salaries-list/school?utm_source=widget' target='_blank'>school</a> on <a href="https://www.paysa.com/?utm_source=widget">Paysa</a> </p> </div> <script deferred src='//media.paysa.com/assets/widgets/loader.js'></script>
Private Training
The course is primarily offered privately to a group, team or company. The training will be run on your premises or you can come to us. We have offices in Johannesburg and Cape Town and can also conduct the training in Durban at Regus Business Centre. We can train anywhere in South Africa and the rest of the African continent if we are coming to you. Private training is R17 500 per delegate if training is conducted on your premises and we require a minimum of 4 delegates to schedule the course. The same training is R22 500 when coming to us and a minimum of 4 delegates is required to schedule the course. The course can be scheduled at a time that best suits your team.
Public Training
We also conduct the training publicly. This is suitable for individuals or delegates that cannot book the private training. The class will be comprised of delegates and individuals from different companies.The training content and duration is the same and training will run at our premises in Johannesburg or Cape Town, South Africa. The course price is R22 500 per delegate. A minimum of 4 delegates is required to run the course. A preliminary date is scheduled and will be confirmed once we have 4 delegates to run the course.
What you will learn
Learn to build native Cross Platform Mobile Apps for Android, iOS and Windows with C# and the .NET platform using Visual Studio and Xamarin Platform on Windows and Mac OS.
This course is developed for seasoned C# developers who would like to develop mobile apps for the Android, iOS and Windows platform using C# and the .NET platform. By the end of the course, you’ll have the skills to tackle small to intermediate cross platform mobile app development projects.
- Understand Cross Platform Mobile App Development
- Overview of Xamarin Offering
Xamarin Android Overview
Xamarin iOS Overview
Xamarin Forms Overview
Create Windows, Android, and iOS Mobile Apps
Accessing Contacts, Camera, GPS and Photos
Handling Events
Publishing to Google Playstore, Windows Store and Apple App Store
Introduction to Cross-Platform Mobile Development
An overview of the Xamarin Platform
Cross Platform Problems
Different user-interface paradigms
Different programming interfaces
Different programming languages
What is Xamarin
Introduction to Xamarin.Android
Introduction to Xamarin.Android
An overview of the Xamarin Android Platform
Native Libraries
Android Runtime
Application Framework
Android Version
Android Applications
Understanding Activities
An Overview Android Service
What are Content Providers?
An Overview of Broadcast Receivers
Android activities
Lifecycle of Activities
Android Events
Intents and Message Passing
Working with Multiple Activities
Android Fragements and LifeCycle
XML Layouts
Elements and attribute names
Using the ID attriubte
Accessing XML Views from code
Understanding how XML Layouts tie to code
Android resources
Using Drawable Resouces
Creating Layout Resources
Creating and Using Menu Resources
Using String Resources
Understanding the generated R.java file
Working with Android views
Using Button View
Using EditText
Using a Spinner
Using DatePicker
Using TimePickers
Using SeekBar
Using Checkbox
Using a Switch
Using RadioButton and RadioGroup
Accessing Camera And Photos
Approaches to adding a camera integration
Camera permissions
Capturing and displaying a photo
Accessing Photos from Gallery
Accessing Remote Photos
Using Third-Party Libraries to Download Photos
Understanding Android Layouts
Laying out with LinearLayout
Using a RelativeLayout for Complex Layouts
Capturing and displaying a photo
Grid Layout with a GridLayout
Understanding FrameLayout
List Views and Adaptors in Android
Using a ListView
Using a ListActivity
ListView ViewHolder Pattern
Better ListViews with RecylerView
Working with Custom List
Android Services
Using and Accessing System Services
Permissions for Accessing System Services
Backgrounding with Android Service
Using IntentService
Using the Location Services
Using the Vibrator Service
Using Notification Service
Google maps
Understanding Maps and Google Play Services
Getting Your Current Location
Subscribing to Location Updates
Displaying Current Locatin on a Map
Adding Pins to Map
Custom Map Renders
Android Support Library
Supporting Older Devices using Support Library
Adding Support Library
Android Support v4 Library
Android Support v7 Library
Material Design and App Theming
OverView of Material Design
Creating List and Cards with Recycler View and CardView
Using Theme.AppCompat Styles
Animations
Customizing views with Drawables
Xamarin IOS
Xamarin for IOS
Introduction to Xamarin.iOS
Working with the Storyboard
Understanding MVC
Introduction to Auto Layout
Introducing Auto Layout
Auto Layout Concepts
Working with Constraints in Interface Builder
Resolving Auto Layout Issues
Supporting Multiple Devices
Previewing the App on Multiple Devices
Using IOS Views
Text Entry with UITextField
Displaying Text with UILabel
Using UIButton
Using DatePicker
Using UIStepper
Using UISlider
Introducing UITableView
Using Table Views
Introduction to table views
Creating a basic table view and a data source
Loading a property list into a table view
Reusing table view cells
Customizing table views
Customizing table view cells
IOS Navigation Patterns
Hierarchical navigation using UINavigationController
Using Segues for Navigation
Using PushViewController
Modal Segues with PresentationViewController and UIAlertViewController
Drill-down using UINavigationController
Navigation drawer using components
Tabs using UITabBarController
Maps And Location
Getting the User’s Location
Region Monitoring and iBeacon
Geocoding Location Data
Displaying Maps
Annotating Maps
Plotting Directions
MapKit Overview
Enabling MapKit
Using CoreLocation
Getting the Current Location and Location Updates
Customizing Maps
Photos and Contacts
Using the Camera
Accesing Photos in the Gallery
Accessing Contacts
Adding and Editing Contacts
IOS Networking
Accessing a REST API
iOS App Transport Security
Parsing JSOn with NewtonSoft JSON.Net Library
Using the HttpClient
Multiple-View Application
Introduction to multiple-view applications
Using Segues
Passing Data between Screens
Using navigation controllers
Deconstructing a master/detail app
Basic Animation And Visual Effects
Basic Animations Using UIView
Transform Animations
Spring Animations
Gestures + UIKit Dynamics
Xamarin Forms
Xamarin Forms For Cross Platform Development
Understanding Xamarin.Forms
What is Xamarin.Forms Suited For?
Introduction to Xamarin.Forms
Hello Xamarin.Forms
Xamarin.Forms MultiScreen
Exploring Xamarin Forms Project
Xamarin.Forms Pages
Adding Page navigation
Creating a Master-detail relationship
Adding data binding to Master-detail
Displaying Tabbed screens
Adding a Swipe navigation with a Carousel
Navigation Patterns
Hierarchical navigation using Toolbar or ActionBar
Modal using DialogFragment, AlertDialog, and PopupMenu
Drill-down using ListView
Navigation drawer using DrawerLayout
Tabs using ActionBar
Xamarin.Forms Layout
Introduction to layouts
Kinds and purposes of layouts
Creating a StackLayout
Using a ScrollView
RelativeLayout using Parent
AbsoluteLayout Proportional Sizing
AbsoluteLayout Proportional Positioning
Xamarin.Forms Navigation
Hierarchical Navigation with NavigationPage
Modal Navigation with NavigationPage, alerts, ActionSheets
Drill-down lists using NavigationPage, ListView and TableView
Navigation drawer using MasterDetailPage
Tabs using TabbedPage
Springboard using images with gesture recognizers
Carousel using CarouselPage
Data binding
Binding basics
Code and XAML
Source and BindingContext
Binding value converters
Binding to a Data Model
Binding and custom views
Understanding ViewModels and MVVM
Binding to a ListView
Storing data with SQLitea and ADO.Net
What is SQLite?
What is SQLite.NET
Installing SQLite. on Windows Phone
Creating a Database
Creating a Table
Executing SQL Statements
Azure Mobile Services
Setting up your Azure Account
Exploring Azure Mobile Services
Adding Azure Mobile Services Xamarin Component
Consuming an Azure Mobile Service Instance
Querying Data
Authentication
Using the Push Notification service
Offline data sync
XAML in Xamarin.Forms
Introduction to XAML
Events and handlers
Data binding
XAML styles
Platform specificity in XAML file
The x:Name attribute
Tap gestures
Resource dictionaries
XAML markup extensions
Third party Libraries
The Xamarin Component Store
Common components
Porting existing C# libraries
Objective-C bindings
Java bindings
Using List View in Xamarin.Forms
Creating a simple ListView
Custom Class in ListView
Data binding with a ListView
Customizing a ListView appearance
Resources and styles in Xamarin.Forms
Basic style
Style in code
Style inheritance
Dynamic styles
Device styles
Handling Platform Specific Requirements
The role of the Device class
Using the DependencyService
Modeling platform specific implementation as an Interface
Implementing photo capture on iOS
Exposing and accessing platform specific implementations
Loosely coupled behavior with MessagingCenter
Sending a notification
Subscribing to a notification