Complete Android 12 & Kotlin Development Masterclass
Learn Android 12 App Development From Beginner to Advanced Developer. Learn to Code Kotlin While Building Android Q Apps
This course includes:
✔ Masterclass
✔ Unlimited Access
✔ 291 Lectures
✔ 45.5 Hrs of Videos
✔ Access from Mobile
✔ Certificate
So you want to become an Android developer
Work from anywhere in the world, or maybe even the same place you're currently at, but with much more interesting and well-paying jobs?
You have a great idea for an app and you just need to learn how to make it happen? Or your friends know that you are tech-savvy and they constantly come to you with their great ideas and want you to build them?
You have no programming experience what so ever? Or maybe you have worked with another programming language in the past?
Either way - you're in the right place.
Course Curriculum
- Introduction to the chapter (0:58)
- Install Android Studio on Windows (3:22)
- Install Android Studio on Mac (3:30)
- Install Android Studio on Linux
- Our first project - the ui and how to change the size of the text (9:27)
- Setting up the Emulator (9:04)
- Hello World (8:32)
- People Counter App (15:48)
- Testing The App On Your Phone (5:49)
- Outro - Setup (0:52)
- Get the most from Tutorials.EU
- Introduction to the chapter (1:28)
- Variables and difference between val and var (7:47)
- Datatypes of numbers (8:49)
- Datatypes bool, char and string (6:48)
- Code for Variables and Datatypes
- Exercise Variables And Datatypes
- Solution For The Exercise Variables And Datatypes
- String Interpolation - String Templates (3:23)
- Quiz 1: Quiz Variables And Datatypes
- Arithmetic Operators and why the type is important (8:43)
- Comparison Operators (8:35)
- Assignment, increment and decrement operators (6:35)
- Code: Operators
- If Statements (11:37)
- If Statements Part 2 (3:53)
- Note - If Statemens as Expressions
- When Expressions - Including Exercises (12:32)
- Quiz 2: If Statements and When Expressions
- Code Of If Statements And When Expressions
- Note - When Statements as Expressions
- While Loop (7:34)
- Do While Loop (3:26)
- More On While Loops (3:42)
- For Loops (5:14)
- Code: Loops
- Exercise Loops
- Solution For Exercise: Loops
- Quiz 3: Loops
- Break and Continue (4:32)
- Functions - Parameters - Arguments and Return - Exercise Included (13:18)
- Code: Functions
- Nullables In Kotlin (10:01)
- Nullables - Elvis Operator - Not Null Assertion (5:27)
- Code: Nullables
- Quiz 4: Fundamentals Kotlin
- Summary - Kotlin Fundamentals I (1:29)
- Introduction to the chapter (1:23)
- Introduction to OOP (6:04)
- Classes and Objects (4:52)
- Classes and Initializers (7:09)
- Exercise Classes and Objects
- Solution for Exercise Classes and Objects
- Scope and Shadowing (5:14)
- Member Variables - Functions And Constructors (13:07)
- Lateinit Plus Setters And Getters (10:20)
- Code- Classes
- Data Classes (8:53)
- Challenge Classes
- Solution: Challenge Classes
- Inheritance (15:16)
- Interfaces (11:14)
- Abstract Classes (6:01)
- Typecasting (7:50)
- Summary Of Classes And OOP (1:23)
- Quiz 5: Object Oriented Programming
- Introduction to the chapter (1:32)
- Overview Collections (2:19)
- Arrays (16:17)
- Lists (9:19)
- Sets and Maps (10:32)
- ArrayLists (5:48)
- Exercise ArrayLists
- Solution For Exercise: ArrayLists
- Lambda Expressions (4:36)
- Visibility Modifiers - public - private- internal - protected and the keyword op (10:54)
- Nested and Inner Classes (4:46)
- Safe Cast and Unsafe Cast Operator (5:05)
- Exception Handling With Try And Catch (15:35)
- Quiz 6: On More Fundamentals Of Kotlin
- Summary Of This Chapter (1:32)
- Useful Links Additional Info
- READ THIS please
- Introduction to the chapter (1:31)
- Setting up the UI for the age calculator and how we can adjust the looks of our (14:43)
- Adding more TextViews and understanding the difference of SP, DP and Pixels (14:44)
- Finalizing the UI of our Age Calculator App (5:05)
- Adding a DatePickerDialog and OnDateSetListener (13:22)
- Using the selected Date to display it and looking into SimpleDateFormat and Date (11:17)
- Finalizing The Age in Minutes App (10:13)
- Challenge - Age in Days
- Summary - Age in Minutes App (1:16)
- Quiz 7: Age In Minutes App
- Important note
- Introduction to the chapter (1:06)
- What You Will Build In This Chapter (5:03)
- Building the Calculator UI using LinearLayouts and layout_weight and onClick (14:36)
- Using onClick And Implementing The CLR Functionality (3:52)
- Adding The onDecimalPoint Function (5:08)
- Adding The onOperatorFunctionality Using Contains And startsWith On Strings (8:05)
- Adding Subtraction - Using Split And Substring Methods On Strings (12:59)
- Adding The Missing Operations And Finalizing The App (10:16)
- Summary Of The Calculator Chapter (1:06)
- Important note
- Introduction - Quiz App (3:02)
- Preparing The Projects Style And Manifest (7:33)
- Setting Up The UI Using Cardview And Disable The Statusbar (16:40)
- Creating The Question Model And Preparing The Questions (15:57)
- Setting Up The Question UI And Connecting The UI To The Model Part 1 (9:46)
- Setting Up The Question UI And Connecting The UI To The Model Part 2 (12:56)
- Adding The Button Functionality To The Questions Activity (20:36)
- Selecting The Right And Wrong Answers And Displaying The Next Question (16:30)
- DEMO - StartActivityForResult (19:23)
- Preparing The UI For The Result Activity (6:42)
- Final Touches And Sending Data Via Intent - putExtra (15:09)
- Generate a Signed APK in Android Studio and upload it on Google Play Store
- Summary - Quiz App (1:37)
- Important note
- Introduction - Kids Drawing App (3:00)
- What You Will Build In This Chapter (1:34)
- Setting Up The Kids Drawing App - Drawing View Part 1 (19:15)
- Setting Up The Kids Drawing App - Drawing View Part 2 (19:17)
- Let The Lines Persist On The View (3:52)
- Adding A Little Border Around The Canvas (3:10)
- Preparing The BrushSizeSelector And How To Use DisplayMetrics (5:32)
- Selecting The Brush Size From A Custom Dialog That We Created (21:03)
- Adding The Color Pallet Using Custom Drawables That We Created (19:01)
- Adding The Color Selection (14:34)
- Adding The Background Image (9:33)
- Adding The Gallery ImageButton To The UI (5:27)
- Side Note
- Permissions Demo (23:46)
- Snackbar - AlertDialog - CustomDialogs Demo Part 1 (8:23)
- CustomDialogs Demo Part 2 (5:48)
- Custom Progress Bar Dialogs (6:08)
- Adding Permissionrequest To Our KidsDrawing App (15:24)
- Selecting An Image From The Gallery Using It As A Background (10:16)
- Adding An Undo Button And Functionality (5:31)
- AsyncTask Demo - Do Something In The Background (8:36)
- Adding A Provider - Path And An Image Sandwitch Maker (13:49)
- Saving An Image On The Phone Using AsingTask and OutputStream (16:28)
- Displaying The Custom Progress Dialog And onPreExecute (4:57)
- Adding A Share Feature To Share The Image Via E-Mail - Whatsapp etc. (8:19)
- Introduction to the chapter (2:20)
- Important Note
- Structure of the App (1:52)
- Setting up the UI (20:37)
- How To Get Rid Of The Actionbar (1:27)
- Adding The Exercise Screen - Intents And Customizing Our Toolbar (12:50)
- Implementing Custom UI Elements For A Progressbar to Tick Counterclock Wise (14:02)
- DEMO Timers (7:24)
- Using CountDownTimers To Display The Seconds Remaining (11:05)
- Challenge - Implementing The ExerciseTimer (14:18)
- Adding The Model, Our Constants For The Exercises And Testing It Part 1 (14:36)
- Adding The Model, Our Constants For The Exercises And Testing It Part 2 (12:31)
- Adding The Upcoming Exercise Text To The RestView (6:33)
- DEMO Text To Speech (8:26)
- Challenge - Add Text To Speech
- Adding Text To Speech To Our App (15:24)
- Adding A Media Player To Play A Sound Once The Exercise Is Over (6:17)
- Intro - RecyclerView (9:04)
- DEMO - RecyclerView (22:22)
- Preparing The RecyclerView For The Bottom To Display Exercise Numbers (6:28)
- Creating Our Own Custom RecyclerViewAdapter And ViewHolder (11:14)
- Displaying The RecyclerView With The Exercise Numbers (13:45)
- Displaying At Which Exercise We Currently Are (11:48)
- Creating The Finish Activity (18:41)
- Setting Up The CustomDialog For The BackButton (10:49)
- Preparing The BMI Screen (8:39)
- BMI Screen For The Metric System (20:32)
- Adding Custom RadioGroups With Custom RadioButtons (9:00)
- Adding The US View Elements (18:19)
- Difference Between View Gone And View Invisible (2:11)
- Finalizing The BMI Calculator With The US System (7:49)
- Adding The History UI And Activity (8:59)
- SQLITE Demo Part 1 - Overview Of The Project And UI (10:53)
- SQLITE DEMO Part 2 - Primary Key, How To Create a Table And Datatypes in SQLite (14:46)
- SQLITE DEMO Part 3 - The Database Class - How Tables Work - CRUD Operations etc. (16:41)
- SQLITE DEMO Part 4 - Checking the SQL Database on the Deveice Outside Of the App (18:57)
- Adding The SqliteOpenHelper And Storing Date In The DB (14:20)
- Reading The Database Entries And Preparing The Listview Item Layout (11:24)
- Adding The RecyclerView And Finishing The App (15:24)
- Summary - 7 Minutes Workout App (2:20)
- Intro Age in Minutes Calculator - Android 12 (1:31)
- Setting up the UI for the age calculator (18:49)
- Adding more TextViews and Understanding SP, DP and Pixels (14:22)
- Finalizing the UI of our Age Calculator App (6:44)
- Adding a DatePickerDialog and OnDateSetListener (13:15)
- Using the selected Date to display it and looking into simpledateformat and date (12:00)
- Finalizing The Age In Minutes App (12:19)
- Summary Age In Minutes App (1:16)
- Intro Calculator App (1:06)
- What you will build in this chapter (5:03)
- Building The Calculator UI using Linear Layouts part 1 (17:32)
- Building The Calculator UI using Linear Layouts part 2 (7:49)
- Using OnClick and Implementing the CLR Functionality (9:07)
- Adding the onDecimalPoint Function (5:43)
- Adding the OnOperator Functionality using Contains and StartsWith on Strings (11:58)
- Adding Subtraction - Using split and substring methods on Strings (15:15)
- Adding the Missing Operations and Finalizing the App (7:17)
- Summary Of The Calculator Chapter (1:06)
- Intro Quiz App (3:02)
- Preparing The Projects Style and Manifest (3:47)
- Setting up the ui and using cardview and disable the statusbar (17:59)
- Creating the question Model And Preparing the questions (20:11)
- Setting Up The QUestion UI ANd Connecting the UI to the model part 1 (11:42)
- Setting Up The QUestion UI ANd Connecting the UI to the model part 2 (18:30)
- Adding The button Functionality to the questions activity (23:51)
- Selecting the Right and Wrong Answer and Displaying the next question (13:06)
- TODO - Register For Activity RESULT DEMO
- Preparing the UI for the Result activity (5:48)
- Final Touches And Sending Data Via Intent - putExtra (18:01)
- Generate a Signed APK
- Summary Quiz App (1:37)
- Introduction - Kids Drawing App (3:00)
- What You Will Build In This Chapter (1:34)
- Setting Up The Kids Drawing App - Drawing View Part 1 (19:15)
- Setting Up The Kids Drawing App - Drawing View Part 2 (19:17)
- Let The Lines Persist On The View (3:52)
- Adding A Little Border Around The Canvas (3:10)
- Preparing the BrushSizeSelector and How To Use DisplayMetrics (5:54)
- Selecting the Brush Size From A Custom Dialog That we Created (19:13)
- Adding the color pallet using custom drawables that we created (17:59)
- Adding the Color selection (11:02)
- Adding the Background Image (7:09)
- Adding The Gallery ImageButton To The UI (4:05)
- Permissions Demo (22:44)
- Snackbar - AlertDialog - CustomDialogs Demo Part 1 (8:23)
- CustomDialogs Demo Part 2 (5:48)
- Custom Progress Bar Dialogs (6:08)
- Adding Permission requests to our KidsDrawing App (14:56)
- Selecting An Image from the gallery using it as a background (10:19)
- Adding an undo button and functionality (6:12)
- Do something in the Background using Coroutines (13:44)
- Adding a provider - path and a image sandwich maker to our app (13:49)
- Saving an Image on The Phone using Coroutines and OutPutStreams (18:39)
- Displaying The Custom Progress Dialog and Hiding it When done (4:57)
- Adding a Share Feature To Share The Image Via-Email - Whatsapp etc. (7:04)
- Intro to 7 Minute Workout App (2:20)
- Setting up the UI (17:08)
- Using Viewbinding and getting rid of our actionbar (7:50)
- Adding The Exercise Screen - Intents and Customizing our Toolbar (12:11)
- Implementing Custom UI Elements For A PRogressbar To Tick Counterclock wise (15:30)
- DEMO - Timers (7:24)
- Using CountDownTimers To Display The Seconds remaining (10:09)
- Adding the Exercise Timer (13:26)
- Adding the Model, Our Constants For The Exercises and Testing It Part 1 (12:22)
- Adding the Model, Our Constants For The Exercises and Testing It Part 2 (13:33)
- Adding the Upcoming Exercise Text To the restview (7:09)
- TextToSpeech Demo (11:00)
- Challenge TextToSpeech
- Adding Text to speech to our application (5:19)
- Adding a Media Player to play a sounds once an exercise is over (7:14)
- Intro to RecyclerViews (9:04)
- Viewbinding with Recyclerviews (23:39)
- Preparing The RecyclerView For The Bottom To Display Exercise Numbers (7:21)
- Creating our own custom recyclerviewadapter and viewholder (10:21)
- Displaying the Recyclerview with the Exercise Numbers (12:16)
- Displaying at witch exercise we currently are (11:30)
- Creating the finish activity (15:17)
- Setting up the CustomDialog for the Backbutton (10:09)
- Preparing the BMI Screen (8:03)
- BMI Screen for the Metric system (22:37)
- Adding Custom RadioGroups with Custom RadioButtons (7:00)
- Adding the US View Elements (16:20)
- FInalizing the BMI Calcutator with the us system (7:00)
- Adding the History UI and Activity (9:33)
- Looking at Lambdas once again (3:23)
- Room Database Demo Part 1 - Introduction to Room Database (9:27)
- Room Database Demo Part 2 - Setting up the Data Class - Room Entity (9:27)
- Room Database Demo Part 3 - The Dao Interface and the Database Class (16:36)
- Room Database Demo Part 4 - CREATE and store data (20:31)
- Room Database Demo Part 5 - Preparing the ItemAdapter with Listeners (12:43)
- Room Database Demo Part 6 - Displaying the Database entries (9:42)
- Room Database Demo Part 7 - Updating and Deleting database entries (22:17)
- Adding the Room Database to Our Workout App - Inserting Workouts (24:17)
- Fetching Data from our Database and displaying it in the log (9:26)
- Displaying the Workout History on our Recyclerview (18:21)
- Summary - 7 Minutes Workout App (1:55)
- Introduction to the chapter (1:53)
- Concept of the App (1:50)
- Setting Up The Happy Places App (14:27)
- Adding The Add HappyPlaceActivity and using dimens, string, color (15:06)
- Adding Calendar Picker And Populate Our Date Edit Text (11:23)
- Using Third Party Libraries (5:15)
- Using The Third Party Library DEXTER For Permission Handling (19:47)
- DEMO - Taking Images With The Camera App and Using It In Our App (12:49)
- Adding The Gallery Picking Functionality (9:09)
- Adding Camera Picking Functionality (5:30)
- Storing The Images On The Device (11:36)
- Preparing The Database Handler And Creating Our Happy Place Model (13:33)
- Saving A Happy Place Via SQLite (7:59)
- Reading The Data From Our Local DB (11:52)
- Preparing The RecyclerView (4:23)
- Using A Third Party Library For Nice Rounded Images (18:55)
- Adding ActivityForResult In Order To Update The List Dynamically (7:33)
- Adding An OnClickListener To RecyclerView Element - Best Practice (14:46)
- Passing Whole Objects from One Activity To Another - Serializable vs Parcalable (11:53)
- Adding Swipe To Edit Functionality using ItemTouchHelper (18:14)
- Fixing The Updating Duplication Bug (9:10)
- Adding Swipe To Delete Functionality (10:34)
- Using The Google Places API (19:02)
- Adding a Map Intent (7:34)
- Displaying A Marker On The Map And Zooming In With An Animation (16:25)
- Adding The Select Current Location Button And Permissions (11:15)
- Getting The Address From The Latitude And Longitude (21:46)
- Getting The Users Location (15:24)
- Steps to integrate AdMob in your Android App in Kotlin
- Summary - Happy Places (1:20)
- Introduction - Weather App (1:07)
- JSON And Tools - Introduction (7:48)
- DEMO - Downloading A Website And Its Text in Android (16:46)
- How Read And Use JSON Objects (10:46)
- Sending Post Requests (7:38)
- Using The GSON Library to Make Working With JSON Easier (9:32)
- Introduction To OpenWeatherMap And General Overview (8:08)
- Preparing The Project And Checking If Location Provider Is Turned On (10:02)
- Preparing Permissionrequests Using Dexter (11:47)
- Preparing the Internet Connection For RETROFIT And The API Calls (12:35)
- Preparing The Models Based On The API (11:21)
- Creating The API Call with Retrofit and Getting A Response (23:18)
- Creating A Custom Dialog And Testing Different Internet Speeds (8:20)
- Adding The UI And Setting It Up (19:41)
- Adding The Sunrise And Sunset Time (11:36)
- Changing The UI Depending On The Weather Data From The API (5:03)
- Adding A Refresh Button In The Menu (7:42)
- Storing The Data Via SharedPreferences And Preloading It (12:25)
- Summary - Weather App (2:18)
- Introduction to the chapter (3:04)
- Concept of the App (2:03)
- Setting Up The Splashscreen, Using Custom Fonts And How To Find Them (15:28)
- Setting Up The Intro Screen And Moving To It After 2 Second (12:34)
- Designing The SignUp Activity (15:51)
- Challenge - Seting Up The SignIn Activity (5:29)
- Setting Up The BaseActivity For Reuse Functions (21:22)
- Preparing The Signup Feature in Firebase And In The App (12:51)
- Registering The User Via Email in Firebase (11:59)
- Signing In The User (13:04)
- Using The FireStore Database to Store The User Details Part 1 (12:46)
- Using The FireStore Database to Store The User Details Part 2 (12:15)
- Signing In And Getting The User Data (7:43)
- Auto Login (5:33)
- Preparing The XML For The Drawer And Navigation Part 1 (14:33)
- Preparing The XML For The Drawer And Navigation Part 2 (14:08)
- Adding The Drawer Functionality In Code (13:02)
- Loading The Image And Username To Display It In The Drawer (13:18)
- Preparing The Profile Screen (12:39)
- Populating The Profile Activity With User Data (7:48)
- Image Chooser For The Profile Image (16:56)
- Uploading An Image To Storage (19:06)
- Updating the User Data Via HashMap In The FireStore Database (17:50)
- Updating The MainActivit Profile Details via ActivityForResult (5:40)
- The Create Board Activity (9:11)
- Select A Board Image (6:45)
- Creating A Board Image (16:03)
- Creating A Board (13:30)
- Creating The Board In The Firestore Database (22:51)
- Preparing The Boards Recyclerview Adapter And UI Elements (17:54)
- Loading The Boards Into The Recyclerview (4:02)
- Updating The BoardsList After Creating A New Board (5:51)
- The TasklistActivity (16:24)
- Loading The Board in The TaskListActivity (16:08)
- Preparing The Tasklist Adapter (21:47)
- Creating Lists Inside A Board (16:29)
- Creating A List Inside A Board Part 2 (12:18)
- Editing And Deleting Lists (14:39)
- Adding The Cards To Lists (20:51)
- Displaying The Cards (9:23)
- Preparing The MembersActivity (7:32)
- Creating The Member Item And The Toolbar (8:33)
- Fetching And Displaying The Members Of A Board (15:42)
- Adding New Members - UI (12:21)
- Adding A New Member To A Board - Logic (22:29)
- Reloading The Board Details On Change (10:59)
- Adding A Detail Screen For Cards (15:47)
- Loading Card Details To Set The Title Of The Card (11:34)
- Adding The Delete Card Menu Icon ANd Populating The EditText Of The Card (8:17)
- Deleting Cards (18:45)
- Preparing The Cards Color Dialog And Adapter (24:18)
- Selecting The Color And Updating The Card (8:53)
- Adding Colors To Our Cards (6:15)
- Passing The Memberslist To The Card (8:52)
- Preparing And Displaying The Card Members Dialog (23:14)
- Prepare The Add Members Feature (18:49)
- Finish The Add Members Feature (11:45)
- Displaying The Assigned Users Per Card On The List Level (14:00)
- Adding A Due Date To The App (10:47)
- Adding The Drag And Drop Feature (14:10)
- Preparing The Notification Feature (19:54)
- Adding The Token To The DB (14:17)
- Adding The Notifications Part 1 (27:12)
- Final Steps For The Notification Feature (13:43)
- Outro (1:42)
In this course, you will learn everything you need to know, to build your own apps, no matter what you need them for. For your company, your friends, your own business or simply for fun. You'll become a real Android App Developer.
If you sign up now you will get all this android app development content:
- Over 45 hours of high quality & high definition 1080p video content
- The complete code with step by step guides (in the code itself). So either you follow along in the video, or you get right into the action in Android Studio yourself.
- Loads of exercises that make sure, that the knowledge really sticks.
- The best Android 12 app development course money can buy.
You will build these amazing apps
- A Trello Clone
- A Quiz App
- A 7 Minute Workout App
- A Weather App
- A Drawing App
- and more...
You will learn from me, Denis Panjuta a German engineer and tutor with over 8 years of programming and teaching experience.
After the course you will be comfortable using:
- The object-oriented programming language Kotlin, variables, data types, functions, classes, inheritance.
- Control flows (if/else, when, for/while/do-while loops) .
- Data structures such as collections, arrays, ArrayLists etc.
- Networking including asynchronous API call, to retrieve live data from the cloud and store it there.
- JSON with all of its advantages.
- Camera, Gallery, SQLite, GPS, and many more Android Device features.
- Third-Party libraries such as GSON, Google Places, RETROFIT, DEXTER and many more.
- Firebase and Firestore usage
- Best practices when using Kotlin and building Android apps.
Get started now and become an Android app developer in just 6 weeks!
Don't waste any more time and get right into the action. This course consists of precisely curated content with fun example applications, exercises, presentations, and demos. As our main goal is to make sure, that you become a successful Android developer. We also offer high-quality support, so in case you get stuck, we will be there for you, answering your questions in the Q&A.
REMEMBER… There is a full 30 DAY-money-back guarantee.
So what are you waiting for? Click the "Buy now" button. You’ve got nothing to lose only to gain from this world-class Android app development course.
Hi, I’m Denis Panjuta
I have a degree in engineering from the University for Applied Science Konstanz in Germany and discovered my love for programming there. With 9 years of programming in different areas & 8 years of experience as a teacher, I have set out to accomplish my mission.
Currently over 250,000 students learn from my courses. This gives me a lot of energy to create new courses with the highest quality possible. My goal is to make learning to code accessible for everyone, as I am convinced, that “Programming is the future.” My mission is, to teach programming to over 10.000.000 people!
So join my courses and learn to create apps, games, websites or any other type of application. The possibilities are limitless.