Xamarin: Build Android and iOS Apps with C#

Learn how you can build both Android and iOS (Cloud-Powered) Apps with C# reusing up to 75% code between platforms.
3.8 (221 ratings) Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
1,420 students enrolled
$19
$65
71% off
Take This Course
  • Lectures 139
  • Length 12 hours
  • Skill Level All Levels
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works

Discover

Find online courses made by experts from around the world.

Learn

Take your courses with you and learn anywhere, anytime.

Master

Learn and practice real-world skills and achieve your goals.

About This Course

Published 12/2015 English

Course Description

Course updated July 20th 2016!

Learn the basics of creating both Android and iOS applications using Xamarin, for reusing up to 75% code. Plus, empower your apps with cloud-based services!

Build Android and iOS apps that are empowered by cloud services with up to 75% code sharing between platforms.

  • The Basics of the Xamarin Platform
  • Learning the C# Programming Language
  • Building iOS Apps with C#
  • Building Android Apps with C#
  • Share code between platforms!
  • Facebook Authentication
  • Cloud-based Databases
  • Facebook Integration

Powerful apps that your users will love

Using Xamarin to build your iOS and Android Apps can save you and your team a lot of effort and money. Think about it, instead of coding two apps, you are coding one and deploying it to both android and iOS. All of the time and money you are saving is just amazing!

Get Hired!

Looking for a job? Picture a company that is looking for an Android AND an iOS developer (as separate positions). Now picture yourself going to an interview and telling the recruiter that you can build BOTH apps in the same time as it would take two people to build them, achieve that by reusing code with Xamarin!

Content and overview

Suitable for beginners or anyone who is barely starting on mobile app development. You'll learn the basics of the C# programming language, the basics of iOS and Android app creation and you'll even create real-world apps connected to the cloud.

Also suitable for experienced developers who want to learn what they can do by sharing code between platforms and integrating powerful cloud services in their apps. You'll learn how you can share C# code between Android and iOS projects, access cloud-hosted databases (and create those databases), authenticate your users with Facebook or other services and more!

What are the requirements?

  • Download Xamarin Studio, but don't install it! We'll cover this during the course.
  • You don't need to purchase any Xamarin License, the free Starter Edition will get you started just fine!

What am I going to get from this course?

  • Code using the C# Language
  • Build Android and iOS Apps with up to 75% code reuse between platforms
  • Implement Cloud Services into Mobile Applications

What is the target audience?

  • Any Mobile Developer who wants to learn how to reuse up to 75% code when building iOS and Android Apps
  • Any Developer who wants to save time and money when building an iOS and Android app by using a cross-platform solution.
  • Any Developer who wants to learn about the absolute best cross-platform solution for Mobile Development (Xamarin is truly native)
  • No prior programming knowledge is needed. This course is probably not for you if you're looking to learn more advance and complex Xamarin usage.

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.

Curriculum

Section 1: What is Xamarin
00:50

Welcome to this Xamarin course! Create Android and iOS apps sharing C# code!

01:17

Where does Xamarin come from? Why does it exist? What is it's goal in life?

01:55

Let's talk a bit about Xamarin Test Cloud, one of Xamarin's services.

02:36
Let's talk a bit about Xamarin Insights, one of Xamarin's services. The one that let's you know important things about how your apps are used.
03:34
Let's talk a bit about Xamarin Test Cloud, one of Xamarin's services. The one that let's you build apps for iOS, Android and more by coding stuff in C# and sharing the stuff! It's all just like a code sharing party among platforms....
Section 2: The Xamarin Platform
03:15

A brief introduction to the C# Language, the one we will use to create our iOS and Android apps using Xamarin.

03:16

A brief explanation on how the code sharing is going to happen between iOS and Android.

02:39

Code away, either with Xamarin Studio, or Visual Studio on Mac or PC, you can build iOS and Android apps with Xamarin.

Section 3: Getting things ready
02:58

Download the Xamarin Studio tool you will need.

01:31

Get Xamarin Studio ready on Mac OS X.

[New in November 2016] Installing Intel HAXM
01:32
01:21

Making sure Xamarin Studio is ready on Mac OS X.

02:41

Getting Xamarin ready on a Windows PC. We will be getting the tools for us to use the Xamarin Platform with Visual Studio 2015.

01:44

Android and iOS Projects on Visual Studio thanks to Xamarin.

00:52

You can download the C# code (GitHub repository) for each section (starting on section 5) in the resources of the first lecture of each section. This way you can follow the creation of Android and iOS Apps with the Xamarin project open, or you know, just compare.

Section 4: Version Control with Visual Studio Team Services and Github
03:35

Create a free account on Visual Studio Team Services and Github to be able to use those tools.

07:01

Clone the repository from Team Services to your PC, add an existing solution or create a new one, sync the solution to the repository and see your code directly from Chrome (or other browsers).

04:07

You have the code on the cloud, let's download it onto a Mac computer so you can code from Xamarin Studio.

Publishing changes to Visual Studio Team Services from Xamarin Studio
Preview
03:20
Bonus: Making the code available on Github
Preview
03:33
Section 5: An Introduction to the C# Language
06:00

C# Hello World, getting started with the C# programming language!

05:25

Declaring variables on C#.

Declare variables, not war.

03:11

Making a float into an integer, or a double into a float, or...you get the idea, stripping the identity out of variables.

03:02

Defining methods (little beings defined as blocks of code that can be called whenever we want, sometimes to do what they do they ask for some values, sometimes they also give values back to whoever called them) with C#.

07:32

If (you are reading this)

{

share how you are liking this lecture descriptions.

}

08:59

If (you are reading this)

{

tell your friends to enroll on this course!

}

else

{

well, do whatever you want.

}

If / else with C#.

04:03

When we are evaluating more than just true or false, switch blocks are very useful.

09:19

Object Oriented Programming with C#. Creating some classes and objects.

06:32

This method is legen.....Wait for it......

Don't do anything until you return a value from this async method.

08:14

DARY!.....

Now, do whatever you need to do, you have awaited the method, you have received some value. Async programming with C# is so easy!

Section 6: Starting with an iOS Project
03:48

Our first iOS app using Xamarin and C#!

04:13

Defining the UI for an iOS app on Xamarin Studio is just like doing it on Xcode!

08:13

Coding an iOS app with C#, how about that!

05:13

Some extra details to make the user experience better.

Section 7: Starting with an Android Project
06:11

Our first Android app with Xamarin and C#!

06:34

I don't always code Android apps, but when I do, I do it with C#.

03:25

The frickishly slow Android emulator.

Section 8: [New on November 2016] Android & iOS Emulator Options
Visual Studio Emulator for Android
03:37
Google Emulator with HAXM from Intel
08:25
The Xamarin Android Player
06:02
04:32

Remoting the iOS simulators from a macOS computer, to Windows, with the Xamarin iOS Simulator for Windows.

Section 9: [New in November 2016] C# Tutorial - Properties and Methods
Properties
09:38
06:31

Learn about out parameters, that let you "return" more than one value from the execution of a method.

06:29

Creating custom constructors, and overloading methods.

Collections
09:21
Generics (a better way to collect)
04:11
Section 10: App Challenge 01 - Hex to RGB
02:30

Your mission, should you choose to accept it!

Build this iOS app with Xamarin and C# by yourself before taking a peek at how I did it!

02:11

Hold my beer while I define the UI for the iOS app on Xamarin Studio.

07:46

Some C# coding for the Android App.

02:17

Making a slightly better UI and UX for the Xamarin.iOS app.

Creating the Android UI
05:24
Coding the Android Functionality
10:16
Final Touches
03:49
Section 11: Navigation between pages on both Android and iOS
04:56

Getting the UI ready, creating more than one Activities and Views for later navigation between them, let's get all Magallanes and stuff (get it?, because he navigated the world.....)

03:24

Some C# code for the navigation between Activities on Android.

04:01

A much faster android simulator, the Xamarin Android Player. Like a zillion times faster than Google's.

06:31

Here we learn how you can get something from one Activity to another when navigating between them.

04:12

Let's now define the same UI for iOS!

01:31

Navigating between View Controllers is so much easier than on Android!

04:41

You guessed it, how to get some values from one ViewController to another when navigating between them.

Section 12: Working with Lists on Android and iOS
03:05

A TableViewController will allow us to list items into the screen.

PS: don't forget to download the code from the resources of this lecture!

03:57

Remember OOP? Let's use it!

04:55

We need to use a couple of methods from the UITableViewController to populate the TableView with items.

05:43

Default cell is so boring, let's create one ourselves! A custom TableViewCell.

08:26

And let's do the same on android! Using lists on android is easy, as easy as changing a word....and a couple of more things.

02:26

Stock layouts for cells are so doll. Let's get creative and create a custom layout and adapter for out list on Android.

09:26

Behind each beautiful custom layout, there's a great custom adapter.

07:55

We know how to do this, it's navigation between pages with data flowing between them.

03:49
We know how to do this, it's navigation between pages with data flowing between them....on android.
05:37

C sharping around.

Section 13: App Challenge 02 - Contact List
00:50

Your next mission, should you choose to accept it.

01:59

Beautiful UI for a powerful app.

Article

Working with UIBarButtonItems and their identifiers

06:51

Linking the Views in the Storyboard to variables inside their corresponding ViewControllers.

04:34

From a new contact page, we will add a contact to a list, for later display on a TableView.

05:29

Getting the items from a List<T> to display them on the TableView.

04:06

From the TableView to a ViewController and displaying the selected item's details.

05:09

Picking images from the photo gallery!

04:44

Remember emails? Me neither but it seems like a nice touch for the elderly people.

Section 14: Sharing code between Platforms
03:22

Moving to the promised land! Share some beautiful C# code between Android and iOS! How's that! :D

Ok, getting to excited about this, it's just you know, XAMAZING!

(noticed what I did there with the X of Xamarin before the "amazing" word?)

Don't forget the resources! There's a link to a GitHub repo with the source-code!

01:49

Let's start with the selfish part, the non-sharable UI.

03:52

Ah C#, I missed you :*

07:13

OK! Share some coke lines! I mean... lines of coke!!! lines of code!!!.... Please don't tell on me.

09:24

iOS-specific coding (to be fare, is because of the selfish non-sharable UI)

05:44

Android-specific coding (bad, selfish, non-sharable UI)

Section 15: App Challenge 03 - Wealth Estimator

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Eduardo Rosas, Software Engineer, Xamarin-certified Mobile developer

I am a Software Engineer, Xamarin Certified Mobile developer. But I'm also studying Finance and Banking.

I have developed mobile apps for iOS, Android and Windows. But I've also designed marketing strategies for some local businesses and my own company.

I'm a cofunder of an Internet of Things startup, in which my role goes from software developer, to cloud expert, to project lead, to inventor. But my role also goes to Chief Financial Officer, to CEO, to marketing, to designer and sometimes even teacher.

I have learnt a lot in school and at work about software development, cloud computing and the internet of things. But I've also learnt in my new school and during my amazing journey creating startups and small businesses about finance, banking, marketing, design, leadership and other very interesting stuff.

Above all however. I am human and I'm here to try to make the world a better place in any way I can, one is creating Internet of Things devices that will make life better, another is teaching stuff so you can be better at work, or even create your own company!

Ready to start learning?
Take This Course