Android App Development Masterclass using Kotlin

BY
Udemy

Master the skills of Android application development using Kotlin programming to boost your professional careers as professional Android Developers.

Mode

Online

Fees

₹ 3299

Quick Facts

particular details
Medium of instructions English
Mode of learning Self study
Mode of Delivery Video and Text Based

Course overview

Android App Development Masterclass using Kotlin online certification is created by Tim Buchalka - Java, Python, Android, and C# Expert Developer, Jean-Paul Roberts - Computer programmer, analyst, &teacher, Tim Buchalka's Learn Programming Academy and David Reidy - Developer of UCare and offered by Udemy which is aimed toward students who want to leverage the strength of Android app development, and obtain the skills to dramatically increase their career prospects as application developers.

Android App Development Masterclass using Kotlin online classes seek to educate the approaches for building code for Android that works with both the current and previous versions of Android by utilizing the AppCompat library. The Android App Development Masterclass using Kotlin online course includes a variety of topics meant to help students understand each concept presented, as well as 62 hours of pre-recorded video lectures, 18 articles, and 2 downloadable resources.

The highlights

  • Certificate of completion
  • Self-paced course
  • English videos with multi-language subtitles
  • 62 hours of pre-recorded video content
  • 18 articles
  • 2 downloadable resources
  • 30-day money-back guarantee 
  • Unlimited access
  • Accessible on mobile devices and TV

Program offerings

  • Certificate of completion
  • Self-paced course
  • English videos with multi-language subtitles
  • 62 hours of pre-recorded video content
  • 18 articles
  • 2 downloadable resources
  • Unlimited access
  • Accessible on mobile devices and tv

Course and certificate fees

Fees information
₹ 3,299
certificate availability

Yes

certificate providing authority

Udemy

What you will learn

Knowledge of android software development

After completing the Android App Development Masterclass using Kotlin certification course, students will gain an insight into the concepts of Android application development. Students will explore the principles and functions of the Kotlin programming language. When building programming for their applications, students will learn how to address existing and older versions of Android. Students will also learn about dialog setup approaches.

The syllabus

Introduction and Course Information

  • Introduction
  • The Udemy Interface
  • Introduction to Android
  • FAQ

Downloading and Installing the Necessary Tools

  • Windows - Install Android Studio
  • Mac - Install Android Studio
  • Linux - Install Android Studio
  • Configure Android SDK on all Three Platforms
  • Android Studio Settings
  • Enable VT-X in BIOS

Hello World Android App

  • Your Programming Careers Questions Answered
  • Access to Programming Career Q&A
  • Introduction
  • Android Studio Templates
  • FAQ: Templates in Android Studio 3.6 and later
  • More on Android Templates
  • Hello World
  • Tour of Android Studio
  • Setting Up a Virtual Device
  • FAQ: Emulators on Windows 10 with AMD processor
  • Running on an emulator
  • Running on a physical Android device

Kotlin Tutorials

  • FAQ for Android Studio 3.3
  • Kotlin Tutorial Setup
  • Kotlin Tutorial 1
  • Variables and Types
  • More on Variables and Types
  • String Concentration and Interpolation
  • val and var and more on Declarations
  • Conditions
  • Classes
  • Objects and Instances
  • Challenge
  • Lists
  • More on Lists
  • toString Challenge
  • for Loops
  • for Encapsulation and Private Properties
  • Overloading Functions
  • Inheritance
  • More on Inheritance
  • Inheritance Continued
  • Further Inheritance
  • while Loops
  • for Loop Revisited
  • do while Loop
  • Loop Challenge

The Button Counter App

  • Introduction
  • Setup Play Project
  • The Constraint Layout
  • Constraints and Resizing
  • Positioning Widgets
  • Inner Lines within a Widget
  • Layouts on Different Devices
  • More on the Constraints
  • Layout Designer rendering error
  • FAQ: Baseline Constraints change
  • Baseline Constraints
  • Constraining Widgets
  • Add Scrolling Capabilities
  • The Button Counter App
  • Finish Layout
  • Coding Button Counter App
  • findViewById and r Class
  • Events and setonclicklistener
  • Testing and Challenge Time
  • Extending the Button App
  • Testing and Challenge
  • Fixing Kotlin Gradle Issues
  • The Activity Lifecycle
  • The Logcat Pane
  • Logging the Activity Lifecycle
  • Activity Lifecycle in Action
  • Saving and Restoring Instance State

Calculator App

  • Demo Calculator App
  • Calculator Interface Setup
  • Continue with Interface
  • Fine Tuning the Layout
  • Create Landscape Layout
  • Comparing FIles with Diff
  • Comparing Directories
  • Coding the Calculator
  • Add onClickListeners
  • Write Perform Operation Function
  • Bug Fix and Code Improvements
  • Bug Fix Challlenge and Save State
  • Widget References in Kotlin
  • Guidelines
  • Fixing Landscape Layout
  • Add Neg Button to Layout
  • Code Changes for Neg Button
  • Add Neg Button to Portrait

The Top 10 Downloader App

  • Introduction
  • AsyncTask
  • Logging and Logcat
  • Important note for API 28 (and higher) and the Top 10 Downloader
  • Download the RSS Feed
  • Reading the Data
  • Android Permissions
  • Writing Idiomatic Kotlin
  • More Idiomatic Kotlin
  • Parsing the Data
  • Create Xml Parse Function
  • Testing the App
  • ListView and ArrayAdapter
  • Code Changes for Array Adapter
  • onDestroy and Asynctask
  • Create Custom Adapter
  • Custom Adapter Code
  • Improving the Adapter
  • ViewHolder Pattern
  • Adding a Menu - Layout
  • Adding A Menu - Code
  • Menu Groups - Layout
  • Menu Groups - Code
  • Challenge Solution

The YouTube app

  • Setup
  • YouTube Activity
  • Adding Widgets Dynamically
  • Google API Key
  • Add Key to Code
  • The YouTube Player
  • onInitializationSuccess Method
  • Adding Listeners
  • Improving the Player
  • Extending App Layouts
  • Extending Youtube App Code
  • Implementing Intents and Challenge
  • Challenge Solution
  • More Error Handling

Flickr Browser App

  • Introduction
  • Flick App and Feeds
  • Json and Mini challenge
  • Log Tag and Companion Objects
  • Kotlin top-level constants
  • Download JSON - doInBackground
  • Downloading the JSON
  • CallBacks
  • Project Diagram and Photo Class
  • GetFlickJsonData class
  • GetFlickrJsonData class continued
  • Uri Builder
  • Flickr Browser User Inferface
  • RecyclerView Layouts
  • Finishing Browse Layout
  • Search and PhotoDetail Activities
  • Nested Layouts
  • Recyclerview Adapter
  • onBindViewHolder and Picasso
  • Associate Adapter to Recyclerview
  • RecyclerItemClickListener
  • GestureDetector
  • Displaying the full photo
  • Serializable
  • Modify Photo Details Activity
  • Update for later version of Kotlin
  • Parcelable
  • Material Design
  • More on Material Design
  • AppCompat - Backwards Compatibility
  • Style Sheets
  • Custom Style Sheets
  • Namespaces
  • Other Material Design Changes
  • Missing Style Editor video
  • Differences in API Levels
  • String Resources
  • String Resources Placeholders
  • Adding the Search Feature
  • SearchView
  • More on SearchView
  • SearchView Events
  • Deprecation of framework PreferenceManager class
  • SharedPreferences
  • Telling Fibs

Databases, the SQL Language and SQLite on Android

  • Introduction
  • Introduction to Databases
  • Database Terminology
  • Command Line and Path Setup for Windows
  • Command Line and Path Setup for Mac
  • Command Line and Path Setup for Ubuntu Linux
  • Introduction to Sqlite
  • More SQL with Sqlite
  • Sqlite Querying Data
  • Order By and Joins
  • More Complex Joins
  • Wild Cards and Views
  • Housekeeping and Challenge
  • Basic SQL in Android
  • Create Table Add Data and Test
  • Cursor and Navigation
  • Correction
  • Android File System
  • Content Providers
  • Setting up the Emulators
  • Contact Provider App Layout
  • The ContactsContract
  • ContentResolver and Abstraction
  • Retrieving Data with a ContentResolver
  • Permissions
  • Checking Permissions at Runtime
  • Testing the App
  • Avoiding Crashes Snackbars and a Challenge
  • More on Snackbars
  • Intents, setData and Uris
  • Problems Storing State
  • Remove Saving of State
  • Test Scripts Challenge and Cleanup

ViewModel and LiveData

  • Introduction
  • Androids ViewModel Class
  • FAQ: Changes to the Lifecycle Components library
  • Using a ViewModel
  • Finish ViewModel Changes
  • Exposing LiveData
  • Swapping the ViewModel
  • ViewModel with Top 10 Downloader
  • Implement ViewModel
  • Final Changes
  • App Testing

TaskTimer App

  • The TaskTimer Application
  • Database Setup
  • Creating a Fragment
  • Tasks Contract Class
  • AppDatabase Class
  • Create SQL for Tasks Table
  • Singleton AppDatabase Class
  • onUpgrade and Testing
  • The ContentProvider
  • FAQ: context in a ContentProvider
  • uriMatcher
  • Updating Build Files
  • The Content URI
  • Register the ContentProvider
  • Using appendWhereEscapeString
  • Mime Types in the Content Provider
  • Content Provider Insert
  • Update and Delete
  • Testing Insert and Update
  • Testing Bulk Update and Delete
  • Main Menu UI
  • Task UI Layout
  • Task List Items Constraints
  • Add / Edit Layout
  • The Kotlin Data Class
  • The Add / Edit Fragment
  • Swapping Fragments
  • Multi-pane Fragments
  • Multi-pane Displays
  • Enabling Two-pane Mode
  • The Fragment Lifecycle Part 1
  • The Fragment Lifecycle Part 2
  • Logging the Fragment Lifecycle
  • Android SDK Gradle and Kotlin Updates
  • Up and Back Navigation for Fragments
  • Object can have More than One Type
  • Removing the Up Button
  • Back Navigation
  • Completing the AddEdit UI
  • Saving the Task Details
  • Test Saving
  • Updating Android Studio, Kotlin, and Gradle
  • Fixing New Kotlin Warnings
  • Layout Container
  • RecyclerView CursorAdapter
  • Introducing David Reidy
  • Tricky String Resources
  • The ViewModel Class
  • Subscribe to The ViewModel
  • Notifications and Observers
  • Responding to Taps
  • onClick Listeners, Interfaces and Callbacks
  • Responding to Clicks from the Adapter
  • Solution to The Interface Challenge
  • Deleting a Task from The Database
  • Accessing a Database on a Background Thread
  • Background Processing Using a Coroutine
  • Clean Up AddEditFragment
  • Saving in The ViewModel
  • Sharing ViewModel Instances

Dialogs

  • AndroidX
  • Introduction to Dialogs
  • AppDialog Class Part 1
  • AppDialog Class Part 2
  • Adding a Dialog to The App
  • Dialog CallBacks
  • Asserts and BuildConfig
  • Strange Dialog Behavior
  • Confirming Exit Without Saving
  • Implementing the Interface
  • Kotlin Extension Functions
  • Image Asset Studio
  • Create an About Dialog the Layout Part 1
  • Create an About Dialog the Layout Part 2
  • Displaying the About Dialog
  • Versioning and build.gradle
  • Dismissing the Dialogue
  • Supporting Older Versions
  • Compatibility Challenge Solution Part 1
  • Compatibility Challenge Solution Part 2

Settings Dialog

  • Introduction
  • Settings Dialog Layout
  • Settings Dialog
  • DefaultSharedPreferences
  • SeekBar Values
  • Quantity String Resources
  • Setting Dialog Title
  • Retain Instance State

Multiple Tables and Database Upgrades

  • Introduction
  • A Correction and the Device File Explorer
  • Database Updates
  • Saving the Timing Data
  • The saveTiming Function
  • Testing Timings
  • Providing Feedback
  • Correction to the Providing Feedback lecture
  • Data Loss
  • Storing the Current Timing Records
  • Solution - Retrieving the Current Time Record
  • Solution Continued
  • Finish Solution and Test
  • When the Battery Dies

Reports

  • Creating Test Data
  • Generating the Test Data
  • Debug and Release Builds
  • Using a SQLite view
  • Adding the view to the Database
  • Adding the view to the ContentProvider
  • Testing the Database Upgrade
  • ConstraintLayout Chains
  • Chain Types
  • Finishing the reports layouts - challenge
  • The Landscape Layouts
  • The Report Adapter
  • The Durations Report Activity
  • Testing Different Locales
  • Creating the reports ViewModel
  • Using the DurationsViewModel
  • Sorting the Report Data
  • Vector Drawables and Asset Studio
  • The Report Menu
  • Report Menu Code - day/week toggle
  • The DatePickerDialog
  • Filtering by Date
  • Filtering in the DurationsViewModel
  • Testing the Report Filters
  • Unbuggy DatePickerDialog
  • Deleting old Timings data
  • Testing Mass Deletion
  • Observing the cursor in the ViewModel
  • A Minor Bug
  • Observing a Configuration Change
  • Testing the Bug Fix
  • Using the First Day Of Week Setting
  • Taking Advantage of Later Features
  • Testing the new DatePickerFragment
  • Observing SharedPreference changes
  • Solution to Ignore Short Timings Challenge

Tidying up

  • Introduction
  • Plugin and Library Versions
  • Code Review
  • Code Review - The AppProvider Class
  • Code Review - CursorRecyclerViewAdapter, DurationsReport, and the ViewModels
  • Code Review - MainActivity and the Contract classes
  • Kotlin and ViewModels
  • Another Breaking Change
  • Improvements to coroutines in a ViewModel
  • Dispatchers
  • Coroutines Don’t Block
  • Bug Fixes and Ideas for Improvements
  • Prevent Deletion of Edited Task
  • Implementing Delete by Swiping - Part 1
  • Implementing Delete by Swiping - Part 2
  • Implementing Delete by Swiping - Part 3
  • Challenge - Bug Fix
  • Challenge - Deleting a task that's being timed
  • Parameterised Queries
  • Adding the Parameters Table
  • Using the Parameterised View in our ViewModels
  • Refreshing the Report
  • Collation

Extra Information - Source code, and other stuff

  • Source Code
  • Bonus Lecture and Information

Instructors

Mr Tim Buchalka

Mr Tim Buchalka
Software Developer
Freelancer

Mr Jean-Paul Roberts

Mr Jean-Paul Roberts
Computer programmer
Freelancer

Mr David Reidy
Instructor
Freelancer

Trending Courses

Popular Courses

Popular Platforms

Learn more about the Courses

Download the Careers360 App on your Android phone

Regular exam updates, QnA, Predictors, College Applications & E-books now on your Mobile

Careers360 App
150M+ Students
30,000+ Colleges
500+ Exams
1500+ E-books