Android App Development Masterclass using Kotlin
- Offered byUDEMY
Android App Development Masterclass using Kotlin at UDEMY Overview
Duration | 62 hours |
Total fee | ₹499 |
Mode of learning | Online |
Official Website | Go to Website |
Credential | Certificate |
Android App Development Masterclass using Kotlin at UDEMY Highlights
- Earn a certificate after completion of the course
- 30-Day Money-Back Guarantee
- Full Lifetime Access
- Access on mobile and TV
- 2 downloadable resources
Android App Development Masterclass using Kotlin at UDEMY Course details
- This course is perfect for absolute beginners with no previous programming experience.
- However, if you are already an expert Android Kotlin programmer with knowledge of all the latest updates, then this course is not for you.
- Existing Android Java Programmers who want to transition to Kotlin for Android app development.
- Learn the core Android app development and Kotlin skills to build real Android apps.
- Learn how to target current and older versions of Android when writing your apps.
- Understand how to create Android apps using Kotlin.
- Be able to apply for Android app development roles.
- In this course students will discover the power of Android app development, and obtain the skills to dramatically increase your career prospects as a software developer
- In this course students will learn to write code for Android that works with the current version and older versions of Android by using the AppCompat library
- This course is also designed to equip students with the essential skills and knowledge needed to become proficient in Android app development using Kotlin
Android App Development Masterclass using Kotlin at UDEMY Curriculum
Introduction and Course Information
Introduction
The Udemy Interface
Introduction to Android
FAQ
Downloading and Installing the Necessary Tools
Windows - Install Android Studio
Do you need to download the Java development Kit?
Java Development Kit for Windows (32Bit Users Only!)
Mac - Install Android Studio
Linux - Install Android Studio
Java Development Kit for Linux (32Bit Users Only!)
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
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 Concatenation 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
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
FAQ: Apple's RSS Feeds
AsyncTask
Logging and Logcat
Important note for API 28 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
Parcelable
Material Design
More on Material Design
AppCompat - Backwards Compatibility
Style Sheets
Custom Style Sheets
Namespaces
Other Material Design Changes
Missing Style Editor video
Style Editor
Differences in API Levels
String Resources
String Resources Placeholders
Adding the Search Feature
SearchView
More on SearchView
SearchView Events
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
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
Data Loss
Storing the Current Timing Records
Solution - Retrieving the Current Time Record
Solution Continued
Finish Solution and Test
When the Battery Dies
Extra Information - Source code, and other stuff
Source Code
Bonus Lecture and Information