Android Mobile App Development with Xamarin using C#
Overview
This course will teach you how to develop native Android mobile apps using Xamarin with C# programming. Xamarin.Android allows you to create native Android applications using the same UI controls that would be used in Java, except with the flexibility and elegance of a C#, the power of the .NET Base Class Library (BCL), and two first-class IDEs - Xamarin Studio and Visual Studio. Xamarin Android apps compile to native code, and they are indistinguishable to mobile apps developed with Java. This course is for experienced .NET developers who would like to use their exisiting skills to develop native mobile apps. for Android Xamarin enables you to share and reuse your existing .NET codebase.
Duration
This course is offered as a stand alone course or as part of the Cross Platform Mobile App Development for Android and iOS using Xamarin with C# programming. The individual course is 5 days and the cross platform course is 10 days. The cross platform course also covers iOS development.
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 with Visual Studio. A Windows or a Mac environment is used. The primary development environment is Windows or Mac. We recommend a Mac if you will also want to develop iOS applications.
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 R9 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 R12 599 when coming to us and a minimum of 4 delegates is required to schedule the course. There is no fixed date to run the course, we find dates would suit 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 R12 599 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.
Course Curriculum
Activities and Intents
Activities are the fundamental architectural element of Android applications. A common way to describe an Android app is "a collection of collaborating Activities". This course shows you how to implement that collaboration. You will see how to start your own Activities and how to start standard Android Activities such as the camera or the web browser. You will learn how to pass arguments to an Activity when you start it and how to retrieve results when it finishes. By the end of the course, you will be able to code all the common patterns needed to make Activities work together.
List Views and Adapters in Android
List Views are one of the most common UI paradigms found in Android, they allow you to display a scrolling list of selectable items. This class will teach you how to populate and use theListView control including population, customization, selection, and more.
RecyclerView and CardView in Android
This course shows how to use the Android RecylerView and CardViewcontrols to display collections of data. After the course, you will be able to add one of these controls to your app and code the adapter, view holder, and item-layout files needed to show your data correctly.
Navigation Patterns
Android supports a variety of different navigation styles your apps can utilize based on the information and relationships you want to display. This class will cover the most common navigation patterns used in Android, including Stack, Drawer, and Tab-based navigation., Along the way, we'll examine some related topics including Fragments, and using the ActionBar.
Introduction to Backgrounding in Android
This class discusses the Android Activitylife-cycle and how to run code independent from it using Android services. We will look at how to start and stop services and how to create hybrid services that are used within our application to keep part of the application alive when the Activity is terminated.
Publishing an Android App
This video covers the specifics of publishing an Android application to both the Google Play store and the Amazon store.
Google Maps
Maps in the palm of our hands have changed the way that we interact with the world. It's hard to imagine navigating without our smartphone these days. in this course we'll examine how to embed and use the Google Maps API in our Android applications, reposition the map, add map markers, and more.
Location Services
Knowing the user's location can help your application to provide more contextually-aware information of the interesting things around the device. This class will explore the location APIs available in Android and show you how to use them to add "location-awareness" into your apps.
Touch in Android
Capacitive Multitouch interfaces on smartphones have become a staple. But using them effectively can be a challenge. This class examines how touch works in Android and covers View based touch events, built-in gestures, and creating custom gestures that will enhance the UX of your apps.
Gestures in Android
Building on the AND240 - Touch course, this class dives into how to manage more complex touch gestures in your Android applications. It covers the use and design of built-in and custom gestures, both continuous and discrete in Android. You will create a multi-gesture application which includes a custom built rotation gesture as well as get hands-on experience designing discrete gestures using the Gestures Builder application, which is available on all Android devices.
Building a Java Bindings Library
It's common to want to integrate in a third-party component into your Android applications. Sometimes there is a .NET component you can use, but sometimes it's an existing Java component. In these cases you will need a Binding Library to be able to integrate with the Java code. This class will cover the core topics for building a Java Binding library for both .JAR and .AAR files and discuss the primary scenarios available