Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Android App Development Video Tutorials
Course Introduction
How the Course is Structured 🚩 (1:44)
Platform Tricks & Walkthrough 🚩 (1:14)
Section 1: Setting Up the Development Environment
Developing for Android - Tools for this Course 🚩 (1:16)
Setup on Mac: Android Studio, the JDK & Connecting a Physical Device (8:20)
Setup on Windows: Android Studio, the JDK & Connecting a Physical Device (9:52)
Troubleshooting: Android Device Not Recognised 🐞
Configure Android Studio for Productivity: Themes, Auto-Import & SDKs ⭐️ (9:03)
How to Set Up an Android Emulator with Hardware Acceleration (15:37)
Android Studio IDE Walkthrough: Panes, Toggles & Navigation (8:39)
Slow PC? Make it Run Faster with these Performance Tricks [Windows] (2:44)
Section 2: I am Rich App [Tutorial]
What Will We Make? (1:44)
Creating a New Android Studio Project and Choosing the API Level ⭐️ (9:12)
What is the Package Name? 🚩
Working with the Layout Editor, Strings, and App Themes ⭐️ (12:52)
Adding Graphics to a Project and using ImageViews ⭐️ (6:40)
What is XML and How Does it Work? 🚩 (7:36)
Setting a Custom Launcher Icon ⭐️ (6:05)
Running the App to Test it Out! ⭐️ (1:56)
Design the App's Screen in the Layout XML 🚩 (4:15)
Understand the Android Project Structure 🚩 (3:16)
The Wonderful World of Version Control: Installing Git ⭐️ (8:28)
Section 3: I am Poor App [Challenge]
What are the Coding Challenges? (1:24)
What You Will Create (1:27)
Step 1: Importing Projects from GitHub and Opening them in Android Studio ⭐️ (7:40)
Step 2: Add a TextView ⭐️
Step 3: Add an ImageView ⭐️
Step 4: Run the App ⭐️
Step 5: How to Submit Completed Apps for Certification [Optional] (3:34)
Section 4: Dicee App [Tutorial]
What Will We Make? (1:29)
Start a New Project and Style the App with the Theme Editor ⭐️ (7:18)
Generating App Icons and Adding Graphics to a Project ⭐️ (6:54)
Designing a Screen with Nested Layouts ⭐️ (15:23)
Using Variables and Linking Layout Elements to Java Code ⭐️ (6:26)
Use the Logcat and a Listener to Check if a Button is Pressed ⭐️ (4:47)
Create Random Numbers in Java ⭐️ (3:10)
Java Arrays and How to Use Them ⭐️ (5:36)
Why did the programmer quit his job?
Debugging Practice: Compilation and Build Errors 🐞 (8:17)
Debugging Practice: The App Has Stopped. What to do after a Crash 🐞 (12:25)
The Code for the Complete Dicee Project
Section 5: Magic 8 Ball App [Challenge]
What You Will Create (1:11)
Step 1: Import the Skeleton Project from Github ⭐️ (2:31)
Debugging: Cannot Resolve symbol 'AppCompatActivity' 🐞
Step 2: Change the App's Theme ⭐️
Step 3: Download the Graphics for the App ⭐️
Step 4: Generate New App Icons ⭐️
Step 5: Add the Graphics to the Project ⭐️
Step 6: Design the App in the Layout XML ⭐️
Step 7: Link the Layout to Java Code ⭐️
Step 8: Check for Bugs and Predict the Future ⭐️
Step 9: Submit Your Coursework [Optional] (0:59)
Section 6: Java Programming for Beginners
Introduction to the Programming Modules (1:22)
Setting up a Pure Java Project in Android Studio ⭐️ (2:51)
Code Blocks, the main() Method, and Code Compilation Explained 🚩 (2:55)
Comments, Variables and Types 🚩 (8:25)
Why You'll Want to Comment Your Code
Methods Part 1 - Defining and Calling a Method 🚩 (3:09)
Methods Part 2 - Adding Parameters 🚩 (6:41)
Methods Part 3 - Multiple Parameters and Returning a Value 🚩 (7:53)
Control Flow: Conditional Statements (IF/ELSE) 🚩 (9:14)
Make a BMI Calculator [Challenge]
Section 7: Xylophone App [Tutorial]
What Will We Make? (1:36)
Setting Up the Project & Using Colours as Resources ⭐️ (4:25)
How to Use Android Documentation and Other Resources 🚩 (8:51)
Calling the Constructor to Create a SoundPool ⭐️ (5:52)
Member Variables and the Importance of Scope 🚩 (6:12)
Using the onClick Property instead of a Listener ⭐️ (3:04)
How to Play a Sound in Your App using the SoundPool ⭐️ (7:28)
The Code for the Complete Xylophone Project
Section 8: Quizzler App [Tutorial]
What Will We Make? (2:12)
Import & Familiarse Yourself with the Skeleton Project ⭐️ (2:55)
Understand Casting & Link the Layout to the Java Code ⭐️ (7:22)
Set an OnClickListener & Implement a Toast Message ⭐️ (7:08)
Create the Model Class & Generate Code with Android Studio ⭐️ (5:57)
The Model View Controller (MVC) Design Pattern and Why We Use It 🚩 (8:55)
Booleans - A data type that holds one of two values
Retrieve Quiz Questions from an Array and Display them on Screen ⭐️ (7:14)
Update Questions on Screen and Interpret Errors in the Logcat ⭐️ (6:37)
Check the User's Answer and Give Feedback ⭐️ (4:15)
Working with the Progress Bar and Tracking Score ⭐️ (5:45)
Fixing the Screen Orientation and Displaying an AlertDialog ⭐️ (4:40)
An Overview of How an Android App Works 🚩 (3:59)
The Activity Lifecycle 🚩 (8:57)
Saving State using the Bundle and Null Pointer Exceptions 🐞 ⭐️ (7:54)
The Difference Between Zero and Null
The Code for the Complete Quizzler Project
Section 9: Destini App [Challenge]
What You'll Create (4:39)
Step 1: Setup the Project ⭐️
Step 2: Examine the activity_main.xml and the strings.xml 🚩
Step 3: Create the Variables for the Views ⭐️
Step 4: Wire up the Views to the Java Code ⭐️
Step 5: Detect Clicks on the Buttons ⭐️
Step 6: Take the Adventure One Step Further ⭐️
Step 7: Create a Variable to Track the Player's Path ⭐️
Step 8: Complete the Game Using Conditionals to Check the State ⭐️
Step 9: Submit Your Project [Optional]
Working Multiple Layouts and the Constraint Layout [Tutorial]
Converting to a Constraint Layout & Designing for Multiple Screens ⭐️ (11:21)
Setting Constraints & Using Built-In Styles ⭐️ (17:16)
Linking Views to Each Other ⭐️ (9:00)
Using Guidelines to Position Layout Elements ⭐️ (10:07)
Automatically Inferring Constraints with Android Studio 🚩 (3:45)
Resource Qualifiers and Layouts for Landscape Mode ⭐️ (9:26)
Internationalisation, Resource Qualifiers and the Translations Editor ⭐️ (7:04)
Creating a Landscape Layout & Adding Content Descriptions for Accessibility ⭐️ (15:07)
The Complete Layout Source Code
Section 10: Java Programming for Intermediates
Set up a Standard Java Project in Android Studio (2:23)
Virtual Machines & Program Entry Points: main() v.s. the Android Intent Filter 🚩 (4:33)
Classes and Objects Demystified 🚩 (5:18)
Fields, the Dot Notation, and an Object's State 🚩 (3:16)
Using Getters/Setters & Access Modifiers: Public v.s. Private 🚩 (6:22)
No-Argument Constructors v.s. Parameterised Constructors 🚩 (8:47)
Object Behaviour & Using Methods 🚩 (8:08)
The static Keyword: Class Variables & Class Methods 🚩 (7:05)
Inheritance, the protected Modifier & the @Override Annotation 🚩 (22:01)
Bonus Question
Section 11: Clima App [Tutorial]
What Will We Make? (2:38)
Project Setup & Overview ⭐️ (3:29)
Gradle Project & Module Scripts and Android SDK Compatibility 🚩 (5:36)
Adding External Libraries as Dependencies with Gradle ⭐️ (7:40)
Manage App Permissions in the Android Manifest ⭐️ (5:13)
Runtime Permissions & Using the LocationManager to Get Your Location ⭐️ (15:44)
Networking, HTTP Requests, Status Codes & APIs 🚩 (9:10)
HTTP Response Cheat Sheet
Making the HTTP Request for Weather Data ⭐️ (7:08)
The JSON Format Explained 🚩 (2:48)
Do you know JSON?
Parse the JSON and Handle Exceptions with a Try-Catch Block ⭐️ (9:30)
Update the UI and Show the Weather to the User ⭐️ (2:38)
Create a New Activity and Link Activity & Layout ⭐️ (3:35)
Using Intents to Navigate Between Activities ⭐️ (5:17)
Intent Extras and EditText onEditorAction() Callbacks ⭐️ (3:16)
API Call with a City Name, the Logical NOT and Freeing Up Resources ⭐️ (3:51)
The Complete Code for the Clima App
Section 12: Bitcoin Ticker App [Challenge]
What You Will Make (2:30)
Step 1: Import the Project ⭐️
Step 2: Check out the Files in the Stub Project ⭐️
Step 3: Add App Permissions to Access the Internet ⭐️
Step 4: Add the Android Asynchronous Http Client Dependency ⭐️
Step 5: Set up the Spinner View ⭐️
Step 6: Interpret the API Docs and Request a JSON ⭐️
Step 7: Make a GET Request Using the Networking Code ⭐️
Step 8: Parse the JSON and update the User Interface ⭐️
Step 9: Submit your App for Certification from the L.A.B. [Optional]
Section 13: Flash Chat App [Tutorial]
What Will We Make? (3:36)
Project Tour and Overview of Existing Code ⭐️ (6:47)
What is Firebase? 🚩 (3:37)
Create a New Project on Firebase and Configure the Android App ⭐️ (7:47)
Registering New Users, Validating Data & the Builder Design Pattern ⭐️ (10:20)
Storing Data Locally (on Device) using SharedPreferences ⭐️ (3:59)
Handling User Login with FirebaseAuth ⭐️ (6:48)
Retrieve the Locally Stored Data ⭐️ (1:44)
Create the Model Class & Save Data to the Cloud ⭐️ (6:57)
ListViews, Adapters & ArrayLists ⭐️ (7:55)
Implementing the ViewHolder Pattern ⭐️ (10:25)
Retrieve Data from Firebase with a ChildEventListener ⭐️ (7:38)
Styling Views with 9 Patch Images ⭐️ (4:18)
The Complete Code for the FlashChat App
Step 7: Create a Variable to Track the Player's Path ⭐️
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock