Complete Android Jetpack Bootcamp(With Jetpack Compose)2022
Last updated 7/2022
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 18.85 GB | Duration: 34h 3m
Last updated 7/2022
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 18.85 GB | Duration: 34h 3m
Android App Development with Jetpack, Compose, MVVM Clean Architecture, UnitTesting, Dagger/Hilt, Retrofit, Coroutines
What you'll learn
Advanced Android Architecture Best Practices, MVVM Clean Architecture
Data Binding, View Binding, View Model, Live Data, Room Data Persistence, Paging, Work Manager, Navigation, LifeCycle aware components
Kotlin Coroutines, Dependency Injection With Dagger 2 & Hilt, Networking With Retrofit 2, Unit Testing
Jetpack Compose Fundamentals. Advanced Project Examples With Jetpack Compose
Requirements
Knowledge of Android Studio
Knowledge of Kotlin or Java
Basic Android Development Skills( at least, have followed a beginner level course or a tutorial)
(you may need to provide an email address to sign up to third party TMDB free REST API )
Description
Become a highly qualified Professional Level Android Developer by mastering most demanded Android skills of 2022!If you are an Android Developer with some coding experience, If you want to level up your skills and become a professional level Android Developer this course is for you! In this course we will teach you Android Jetpack Architecture Components (View Model, Live Data, Room, Data Binding, Paging, Work Manager,Navigation,Life cycle ) with "Dependency Injection With Dagger 2 And Hilt" , " Networking (REST API Communication) With Retrofit 2" ,"Kotlin Coroutines", "MVVM Clean Architecture", "Unit Testing", "Jetpack Compose" and other Android Jetpack libraries such as Notifications, Permissions and Preferences.With over 300 lectures and more than 33 hours of video this comprehensive course leaves no stone unturned! . Firstly, I will teach you each major topic with easy to understand simple project examples . Later, we will complete larger/complex project examples applying all the things we learnt. To improve the student engagement coding challenges(homework assignments) and quizzes have included to each chapter, as well as 3 major projects aimed to provide a clear idea about how all those components work together!This course will teach you Advanced Android Development in a practical manner, with every lecture comes a full coding screen-cast, corresponding short notes and downloadable code samples! Learn in whatever manner is best for you!We cover a wide variety of topics, including:Room Data Persistence Data BindingView ModelLive DataDependency Injection With DaggerNetworking With RetrofitPagingWork ManagerNavigationLife CyclesNotificationsKotlin CoroutinesClean ArchitectureUnit TestingDagger HiltView BindingJetpack Composeand much more!You will get lifetime access to over 300 lectures plus corresponding code samples and notes for the lectures! This course comes with a 30 day money back guarantee! If you are not satisfied in any way, you'll get your money back. Plus you will keep access to the Notes and Code Samples as a thank you for trying out the course!So what are you waiting for? Start mastering Android Architecture Components with Dagger and Retrofit in a way that will advance your career and increase your knowledge, all in a fun and practical way!Who is the target audience?Beginners level Android Developers (with the basic knowledge of Android Development fundamentals).Intermediate level android developers who want to level up their skills!Note: During the course (in one section) to demonstrate different usages of retrofit, we will use TMDB free online REST API . You may need to provide an email address to sign up and get a free API key from them.
Overview
Section 1: Course Overview(Watch this first)
Lecture 1 Course Curriculum Overview
Lecture 2 Course Curriculum Overview(Written)
Lecture 3 How To Enable Subtitles(Captions)
Lecture 4 How To Ask Questions In The Course
Lecture 5 How To Download And Use Code Samples
Section 2: Data Binding(New Kotlin Android Upgraded Lessons)
Lecture 6 A Simple Data Binding Example
Lecture 7 BuildFeatures(new update)
Lecture 8 Databinding Vs Kotlin Synthetic(KTX)
Lecture 9 Coding Challenge 1
Lecture 10 Coding Challenge 1 Answer
Lecture 11 Data Binding With Objects
Lecture 12 Practical Applications Of Data Binding
Section 3: Working With View Models(New Kotlin Android Upgraded Lessons)
Lecture 13 Why Do We Need A View Model?
Lecture 14 A Simple View Model Example
Lecture 15 Coding Challenge 1
Lecture 16 Coding Challenge 1 Answer
Lecture 17 When is the ViewModel's onCleared() called?
Lecture 18 Inheritance from an interface with '@JvmDefault' members Error.
Lecture 19 View Model Factory
Lecture 20 New way to get and instance of ViewModel.
Section 4: Live Data (New Kotlin Android Upgraded Lessons)
Lecture 21 LiveData Fundamentals
Lecture 22 Coding Challenge 1
Lecture 23 Coding Challenge 1 Answer
Section 5: View Model & Live Data With Data Binding (New Kotlin Android Upgraded Lessons)
Lecture 24 View Model With Data Binding
Lecture 25 Live Data With Data Binding
Lecture 26 Two Way Data Binding
Lecture 27 When do we use Two Way Data Binding ?
Lecture 28 Coding Challenge
Lecture 29 Coding Challenge Answer
Section 6: Navigation Architecture Component(New Kotlin Android Upgraded Lessons)
Lecture 30 Introduction To Navigation Architecture Component
Lecture 31 Project SetUp
Lecture 32 Navigation Graph
Lecture 33 Navigation Host Fragment
Lecture 34 Navigation Destinations
Lecture 35 Navigation Actions
Lecture 36 Transforming Data Between Destinations
Lecture 37 Animations For Actions
Lecture 38 Coding Challenge 1
Lecture 39 Coding Challenge 1 :Solution
Section 7: Android RecyclerView Fundamentals(New Kotlin Android Upgraded Lessons)
Lecture 40 Android RecyclerView Fundamentals
Lecture 41 RecyclerView with Data Binding and ViewBinding
Section 8: Kotlin Coroutines Fundamentals (New Kotlin Android Upgraded Lessons)
Lecture 42 Introduction
Lecture 43 Importance of Asynchronous Programming
Lecture 44 Our First Coroutine
Lecture 45 Scopes, Dispatchers & Builders
Lecture 46 Coding Challenge 1
Lecture 47 Coding Challenge 1 :Solution
Lecture 48 Switch The Thread Of A Coroutine
Lecture 49 How to fix the Error occured with coroutines version 1.3.7
Lecture 50 Suspending Functions
Lecture 51 How Suspending Functions Work
Lecture 52 Async & Await
Lecture 53 Unstructured Concurrency
Lecture 54 Structured Concurrency
Lecture 55 View Model Scope
Lecture 56 Life Cycle Scope
Lecture 57 Live Data Builder
Lecture 58 Kotlin Flows and Channels
Section 9: Room Data Persistence Library(New Kotlin Android Upgraded Lessons)
Lecture 59 Introduction
Lecture 60 Project SetUp
Lecture 61 Room Entity Classes
Lecture 62 Data Access Object Interface(DAO)
Lecture 63 Room Database Class
Lecture 64 Repository In MVVM
Lecture 65 Design The View
Lecture 66 Create A ViewModel
Lecture 67 Implementing CRUD Functionalities : Part 1
Lecture 68 Implementing CRUD Functionalities : Part 2
Lecture 69 Implementing CRUD Functionalities : Part 3
Lecture 70 Displaying Toast Messages With ViewModel and LiveData
Lecture 71 Verification With Returned Values From Database
Lecture 72 User Input Validations
Lecture 73 More Efficient RecyclerView
Lecture 74 Note: New bug found in Kotlin 1.6.0
Section 10: Retrofit With Kotlin Coroutines(New Kotlin Android Upgraded Lessons)
Lecture 75 Introduction
Lecture 76 Project SetUp
Lecture 77 Create Data Classes
Lecture 78 Interface With URL End Points
Lecture 79 Retrofit Instance Class
Lecture 80 View Data
Lecture 81 Query Parameters
Lecture 82 Path Parameters
Lecture 83 Logging Interceptor
Lecture 84 Set Time Outs
Lecture 85 POST Requests
Section 11: Notifications(New Kotlin Android Upgraded Lessons)
Lecture 86 A Simple Notification Example
Lecture 87 Tap action
Lecture 88 Action Buttons
Lecture 89 Direct Reply Action
Section 12: Work Manager(New Kotlin Android Upgraded Lessons)
Lecture 90 Introduction
Lecture 91 Work Manager One Time Work Request Example
Lecture 92 Get Status Updates From Workers
Lecture 93 Set Constraints
Lecture 94 Set Input & Output Data Of A Worker Class
Lecture 95 Chaining Workers
Lecture 96 Periodic Work Request Example
Section 13: Dependency Injection With Dagger 2(New Kotlin Android Upgraded Lessons)
Lecture 97 What is "Dependency Injection"?
Lecture 98 Dagger and Hilt
Lecture 99 A Pure Dependency Injection Example
Lecture 100 Constructor Injection With Dagger 2
Lecture 101 Dagger 2 Modules
Lecture 102 Working With Interfaces
Lecture 103 Field Injection With Dagger 2
Lecture 104 State Of A Module
Lecture 105 The Application Class
Lecture 106 Singletons
Section 14: MVVM Clean Architecture Complete Project Example 1(New Upgraded Kotlin Lessons )
Lecture 107 Introduction
Lecture 108 Use Cases Of The Project
Lecture 109 Project Setup
Lecture 110 JSON To Kotlin Class Plugin
Lecture 111 Create The Data Layer : Part 1
Lecture 112 Create The Data Layer : Part 2
Lecture 113 Create The Data Layer : Part 3
Lecture 114 Create The Domain Layer
Lecture 115 Create The Data Layer : Part 4
Lecture 116 Create The Data Layer : Part 5
Lecture 117 Create The Presentation Layer : Part 1
Lecture 118 Create The Presentation Layer : Part 2
Lecture 119 Create The Presentation Layer : Part 3(Dagger)
Lecture 120 Create The Presentation Layer : Part 4(RecyclerView)
Lecture 121 Create The Presentation Layer : Part 5
Lecture 122 Create The Presentation Layer : Part 6
Section 15: Unit Testing Fundamentals(New Kotlin Android Upgraded Lessons)
Lecture 123 Introduction
Lecture 124 Project SetUp
Lecture 125 Our First Local Unit Test
Lecture 126 Coding Challenge 1 Answer
Lecture 127 Test Doubles
Lecture 128 Testing ViewModel
Lecture 129 Testing Room
Lecture 130 Testing LiveData
Lecture 131 More On Unit Testing(Mock Web Server,…)
Section 16: View Binding (New Kotlin Android Upgraded Lessons)
Lecture 132 View Binding Fundamentals
Lecture 133 Android Services Example With View Binding
Lecture 134 Android Services and Broadcast Receivers : Stopwatch app with view binding
Section 17: Dagger Hilt (New Kotlin Android Upgraded Lessons)
Lecture 135 Hilt Fundamentals
Lecture 136 Hilt Project Example
Section 18: MVVM Clean Architecture Complete Project Example 2(New Upgraded Kotlin Lessons )
Lecture 137 Introduction
Lecture 138 Recognizing Use Cases
Lecture 139 Recognizing data models
Lecture 140 Storing Secret Keys
Lecture 141 Remote Data Source And Related Functions.
Lecture 142 Unit Testing With Mock Web Server
Lecture 143 View Model & View Model Factory
Lecture 144 Dependency Injection With Hilt
Lecture 145 Fragments & Navigation Components
Lecture 146 Fix Error :Inheritance from an interface with '@JvmDefault' members is only all
Lecture 147 RecyclerView With DiffUtil
Lecture 148 More Dependency Injection
Lecture 149 Basic Paging With RecyclerView.
Lecture 150 Display On A Web View.
Lecture 151 Implementing Search Functionality
Lecture 152 FragmentContainerView For Navigation
Lecture 153 Hilt SingletonComponent
Lecture 154 Local data base related components part 1
Lecture 155 Local data base related components part 2
Lecture 156 Local data base related components part 3
Section 19: Jetpack Compose Fundamentals (New Kotlin Android Upgraded Lessons)
Lecture 157 Introduction And Setup
Lecture 158 Jetpack Compose Modifiers And Other Parameters
Lecture 159 Column Layout In Jetpack Compose
Lecture 160 Row Layout In Jetpack Compose
Lecture 161 Box Layout In Jetpack Compose
Lecture 162 Jetpack Compose Buttons
Section 20: Jetpack Compose Advanced Layout Designs (New Kotlin Android Upgraded Lessons)
Lecture 163 RecyclerView(Lazy Column) In Jetpack Compose
Section 21: State In Jetpack Compose
Lecture 164 State In Jetpack Compose
Lecture 165 Remembering State Before Recomposition
Lecture 166 Property Delegates
Lecture 167 Unidirectional Data Flow and State Hoisting
Lecture 168 Saving The State With rememberSaveable
Lecture 169 ViewModel As A Parameter Of The Composable
Section 22: Kotlin Coroutine Flows
Lecture 170 Kotlin Flows Introduction
Lecture 171 Kotlin Flows With Jetpack Compose
Lecture 172 Kotlin Flows With ViewModel
Lecture 173 Buffer & CollectLatest
Lecture 174 Flow Operators
Section 23: Jetpack Compose MVVM Project Example 01 - Unit Converter App
Lecture 175 Introduction
Lecture 176 Create The Composables : Part 1
Lecture 177 Create The Composables : Part2
Lecture 178 Create The Composables : Part3
Lecture 179 Create The Composables : Part4
Lecture 180 Room Database, Entity and DAO
Lecture 181 Saving Data In The DataBase.
Lecture 182 Displaying The History List Using A Lazy Column
Lecture 183 Delete A List Item & Delete All Button
Lecture 184 Dependency Injection With Hilt
Lecture 185 Other remaining lessons of this Jetpack Compose
Section 24: Java Based Lessons : Introduction
Lecture 186 Course Curriculum Overview(Watch this first)
Lecture 187 Android Architecture Components Overview
Lecture 188 MVVM Architecture Overview
Lecture 189 Introduction To ViewModel
Lecture 190 ViewModel Code Example
Lecture 191 Working With Live Data
Lecture 192 setValue() or postValue()
Section 25: Easier SQLite With Room
Lecture 193 Introduction To Data Persistence With Room
Lecture 194 Introduction To Data Persistence With Room : Short Note
Lecture 195 A CRUD App Created Without Room
Lecture 196 Project Set Up For Room
Lecture 197 Room Entity Classes
Lecture 198 Room Entity Classes : Short Note
Lecture 199 Room DAO(Data Access Object)
Lecture 200 Room DAO(Data Access Object) : Short Note
Lecture 201 Room Database Class
Lecture 202 Room Database Class: Short Note
Lecture 203 Complete the CRUD Functionalities
Lecture 204 Complete The CRUD functionalities : Short Note
Lecture 205 Database Operations Using Separate Threads
Lecture 206 Database Operations Using Separate Threads: Short Note
Lecture 207 Callback Class Of Room Database
Lecture 208 Callback Class Of Room Database : Short Note
Lecture 209 Home Work Exercise 1
Lecture 210 Home Work Exercise 1 Answers
Section 26: Android Data Binding Mastery
Lecture 211 Android Data Binding Introduction
Lecture 212 Android Data Binding Introduction:Short Note
Lecture 213 Data Binding Project Set Up
Lecture 214 Data Binding Project Set Up : Short Note
Lecture 215 Data Binding With TextViews
Lecture 216 Data Binding With TextViews : Short Note
Lecture 217 Data Binding For Event Listeners
Lecture 218 Data Binding Event Listeners : Short Note
Lecture 219 Work With Include Layouts
Lecture 220 Work With Include Layouts : Short Note
Lecture 221 Two Way Data Binding
Lecture 222 Two Way Data Binding : Short Note
Lecture 223 Home Work Exercise 2
Lecture 224 Home Work Exercise 2 Answers
Lecture 225 Data Binding With RecyclerView
Section 27: Complete MVVM Project Example (View Model+Live Data+ Room+ Data Binding)
Lecture 226 Introduction
Lecture 227 Create Room Components Of The Project
Lecture 228 Create A Repository
Lecture 229 Why we didn't use AsynkTask for some methods?
Lecture 230 Create A View Model
Lecture 231 Work With The Spinner
Lecture 232 View Data On The RecyclerView
Lecture 233 Complete Insert, Update And Delete Functionalities
Lecture 234 Use DiffUtil For The RecyclerVIew Updates
Lecture 235 Use Executors Instead of AsyncTask
Section 28: Retrofit Crash Course(Optional : For Those who haven't worked with Retrofit)
Lecture 236 Purpose of this section
Lecture 237 Introduction
Lecture 238 Create A Retrofit Instance
Lecture 239 Entity/Model Classes
Lecture 240 Create An Interface With URL End Points
Lecture 241 The Call Interface
Lecture 242 Working With Path Parameters
Lecture 243 Working With Query Parameters
Lecture 244 Work With The Request Body
Lecture 245 Http Headers
Lecture 246 When Do We Use OkHttp ?
Lecture 247 Get Request Example Introduction
Lecture 248 Set Up The Project
Lecture 249 Generate Model Classes
Lecture 250 Interface With URL End Points
Lecture 251 Create A Singleton Retrofit Instance
Lecture 252 Create The View
Lecture 253 Create The View - Part 2
Lecture 254 Home Work Exercise
Lecture 255 Home Work Exercise Answers
Lecture 256 Retrofit POST Request Example Introduction
Lecture 257 Retrofit POST Example Part 1
Lecture 258 Retrofit POST Example Part 2
Lecture 259 Retrofit POST Example Part 3
Lecture 260 How Values Are Sent In A HTTP POST Request
Lecture 261 TMDB Client App: Introduction
Lecture 262 Get An API Key From The Movie Database
Lecture 263 Project Set Up
Lecture 264 Model Classes
Lecture 265 Retrofit Instance And Interface
Lecture 266 Get Data From The API
Lecture 267 Create The View - Part 1
Lecture 268 Create The View - Part 2
Lecture 269 Create The View - Part 3
Section 29: Retrofit With View Model, Live Data And Data Binding
Lecture 270 Home Work Exercise Introduction
Lecture 271 Home Work Exercise Answers : Part 1
Lecture 272 Home Work Exercise Answers : Part 2
Section 30: Android Paging Library
Lecture 273 Introduction To Paging Library
Lecture 274 Project Set Up
Lecture 275 Create A Data Source
Lecture 276 Create A Data Source Factory
Lecture 277 Modify The View Model For Paging
Lecture 278 Create The PagedListAdapter
Lecture 279 Modify The Activity For Paging
Section 31: SOLID Principles Of Object Oriented Software Engineering
Lecture 280 SOLID Principles Of Object Oriented Design
Section 32: Dependency Injection With Dagger(A dagger 2 crash course)
Lecture 281 Dependencies And Dependency Injection
Lecture 282 Pure Dependency Injection Example
Lecture 283 Constructor Injection
Lecture 284 Dagger Modules
Lecture 285 Work With Interfaces
Lecture 286 Inject Dependencies using an injector method.
Lecture 287 Modules With A State
Lecture 288 Create A Sub Class Of The Application Class
Lecture 289 Dagger 2 Singleton
Lecture 290 Home Work Exercise
Lecture 291 Home Work Exercise Answers
Lecture 292 View-model Factory Overview
Lecture 293 Dependency Injection With Dagger 2 For MVVM
Section 33: Android Work Manager
Lecture 294 Introduction
Lecture 295 Simple Work Manager Example
Lecture 296 Get Status Updates
Lecture 297 Working With Constraints
Lecture 298 Send And Receive Data
Section 34: Navigation Architecture Components Framework
Lecture 299 Introduction
Lecture 300 Project Set Up
Lecture 301 Create A Navigation Graph
Lecture 302 Create A Navigation Host Fragment
Lecture 303 Navigation Destinations
Lecture 304 Actions
Lecture 305 SafeArgs For Data Passing
Lecture 306 Home Work Exercise
Lecture 307 Home Work Exercise Answers
Section 35: Lifecycle Aware Components
Lecture 308 Android Activity Lifecycle
Lecture 309 Android Activity Lifecycle Code Example
Lecture 310 Lifecycle Aware Components
Section 36: Conclusion And Bonus Lecture
Lecture 311 Conclusion
Lecture 312 Bonus Lecture
Beginner level Android Developers(with the knowledge of Android Development fundamentals),Professional Android developers.,Determined students who are willing to become professional Android developers.,Anyone who has a passion to build awesome Android applications using cutting edge technologies.