Android Programming for Beginners Third Edition

Learn how to build mobile apps from scratch using Java programming.

(ANDROID-PROG.AJ1) / ISBN : 978-1-64459-594-7
This course includes
Interactive Lessons
Hands-On Labs
AI Tutor (Add-on)
Get A Free Trial

About This Course

Android Programming for Beginners (Third Edition) course has been especially designed for aspiring Android developers wanting to make a career in mobile app development or those simply wanting to upgrade their programming skills. It is a comprehensive course that focuses on the fundamentals of Android development, including Java programming, Android Studio setup, and UI design principles. The course content also covers advanced topics like object-oriented programming, layouts, and data persistence. By the end of this course, you’ll be able to build interactive and engaging apps from scratch.

Skills You’ll Get

  • Thorough grasp of Java syntax, and OOP concepts
  • Expertise in using Android Studio and the Android SDK
  • Follow UI design principles to create visually appealing user interfaces
  • Understanding of data storage, retrieval, and persistence techniques
  • Multimedia integration: adding images, sound effects, and animations
  • Optimizing the app’s performance and user experience
  • Identify and resolve app development issues
  • Build unique and innovative app ideas

1

Introduction

  • Who this course is for
  • What this course covers
  • Conventions used
2

Beginning Android and Java

  • Technical requirements
  • What's new in the third edition?
  • Why Java and Android?
  • The beginner's first stumbling block
  • How Java and Android work together
  • Setting up Android Studio
  • What makes an Android app?
  • The structure of Android's Java code
  • Building our first Android app
  • Deploying the app so far
  • Frequently asked questions
  • Summary
3

First Contact: Java, XML, and the UI Designer

  • Examining the logcat output
  • Exploring the project Java and the main layout XML
  • Adding buttons to the main layout file
  • Leaving comments in our Java code
  • Coding messages to the user and the developer
  • Writing our first Java code
  • Frequently asked questions
  • Summary
4

Exploring Android Studio and the Project Structure

  • Project Explorer and project anatomy
  • Exploring the file and folder structure of the Empty Activity project template
  • Exploring the file and folder structure of the Basic Activity project template
  • Exploring a Basic Activity project
  • Exploring the Android emulator
  • Summary
5

Getting Started with Layouts and Material Design

  • Finding out about Material Design
  • Exploring Android UI design
  • Introducing layouts
  • Building a precise UI with ConstraintLayout
  • Laying out data with TableLayout
  • Linking back to the main menu
  • Summary
6

Beautiful Layouts with CardView and ScrollView

  • Attributes quick summary
  • Building a UI with CardView and ScrollView
  • Creating a tablet emulator
  • Frequently asked question
  • Summary
7

The Android Lifecycle

  • The life and times of an Android app
  • How Android interacts with our apps
  • A simplified explanation of the Android lifecycle
  • How we handle the lifecycle phases
  • Lifecycle demo app
  • The structure of Java code – revisited
  • Introducing fragments and the lifecycle
  • Summary
8

Java Variables, Operators, and Expressions

  • Java is everywhere
  • Understanding Java syntax and jargon
  • Storing and using data with variables
  • Using variables
  • Changing values in variables with operators
  • Trying out expressions
  • Summary
9

Java Decisions and Loops

  • Making decisions in Java
  • Switching to make decisions
  • Repeating code with loops
  • for loops
  • Loops demo app
  • Summary
10

Learning Java Methods

  • Methods revisited
  • Method structure
  • Using method demo apps
  • Exploring method overloading
  • Scope and variables revisited
  • Method recursion
  • Questions
  • Summary
  • Further reading
11

Object-Oriented Programming

  • Important memory management warning
  • Object-oriented programming
  • Looking at the code for a class
  • Basic classes app
  • Frequently asked questions
  • Summary
12

More Object-Oriented Programming

  • Remember that encapsulation thing?
  • Static methods
  • Encapsulation and static methods mini-app
  • OOP and inheritance
  • Inheritance example app
  • Polymorphism
  • Frequently asked questions
  • Summary
13

The Stack, the Heap, and the Garbage Collector

  • All the Android UI elements are classes too
  • Inner and anonymous classes
  • Frequently asked questions
  • Summary
14

Anonymous Classes – Bringing Android Widgets to Life

  • Declaring and initializing the objects
  • Creating UI widgets from pure Java without XML
  • Exploring the palette – part 1
  • Anonymous classes
  • Exploring the palette and more anonymous classes – part 2
  • The Widget Exploration app
  • Using WebView
  • Running the Widget Exploration app
  • Summary
15

Android Dialog Windows

  • Dialog windows
  • The Note to Self app
  • Summary
16

Arrays, Maps, and Random Numbers

  • A random diversion
  • Handling large amounts of data with arrays
  • Simple array example mini-app
  • Getting dynamic with arrays
  • Entering the nth dimension with arrays
  • ArrayList
  • Arrays and ArrayList instances are polymorphic
  • More Java collections – meet the Java HashMap
  • The Note to Self app
  • Frequently asked questions
  • Summary
17

Adapters and Recyclers

  • RecyclerView and RecyclerAdapter
  • Adding RecyclerView, RecyclerAdapter, and ArrayList to the Note to Self project
  • Running the app
  • Frequently asked questions
  • Summary
18

Data Persistence and Sharing

  • Android intents
  • Adding a settings page to Note to Self
  • Persisting data with SharedPreferences
  • Reloading data with SharedPreferences
  • Making the Note to Self settings persist
  • More advanced persistence
  • Backing up user data in Note to Self
  • Frequently asked questions
  • Summary
19

Localization

  • Making the Note to Self app accessible for Spanish and German speakers
  • Running Note to Self in German or Spanish
  • Summary
20

Animations and Interpolations

  • Animations in Android
  • Animation demo app – introducing SeekBar
  • Frequently asked questions
  • Summary
21

Drawing Graphics

  • Understanding the Canvas class
  • Using the Canvas class
  • Canvas demo app
  • The Android coordinate system
  • Creating bitmaps
  • Manipulating bitmaps
  • Bitmap manipulation demo app
  • Frequently asked question
  • Summary
22

Threads and Starting the Live Drawing App

  • Creating the Live Drawing project
  • The game loop
  • Threads
  • Implementing the game loop with a thread
  • Running the app
  • Summary
23

Particle Systems and Handling Screen Touches

  • Adding custom buttons to the screen
  • Implementing a particle system effect
  • Handling touches
  • Running the app
  • The Android Studio Profiler tool
  • Summary
24

Supporting Different Versions of Android, Sound Effects, and Spinner Widget

  • Handling different versions of Android
  • The SoundPool class
  • Sound demo app introducing the Spinner widget
  • Summary
25

Design Patterns, Multiple Layouts, and Fragments

  • Introducing the model-view-controller pattern
  • Android design guidelines
  • Real-world apps
  • Device detection mini-app
  • Configuration qualifiers
  • Fragments
  • Our first Fragment app
  • Fragment reality check
  • Frequently asked question
  • Summary
26

Building a Simple Image Gallery App

  • Angry Birds classic swipe menu
  • Building an image gallery/slider app
  • Summary
27

Advanced UI with Navigation Drawer and Fragment

  • Introducing NavigationView
  • Examining the Simple Database app
  • Starting the Simple Database project
  • Exploring the autogenerated code and assets
  • Coding the Fragment classes and their layouts
  • Using the Fragment classes and their layouts
  • Summary
28

Android Databases

  • Databases 101
  • SQL syntax primer
  • Android SQLite API
  • Coding the database class
  • Coding the Fragment classes to use the DataManager class
  • Running the Age Database app
  • Summary
29

A Quick Chat before You Go

  • Publishing
  • Make an app!
  • Keep learning
  • My other channels
  • Goodbye and thank you

1

Beginning Android and Java

  • Building an Android App
2

First Contact: Java, XML, and the UI Designer

  • Adding Button
  • Handling Button Clicking using Java Methods
3

Exploring Android Studio and the Project Structure

  • Exploring an Empty Activity and Android Emulator
  • Exploring a Basic Activity Project
4

Getting Started with Layouts and Material Design

  • Creating and Exploring a Layout Project
  • Creating a Table Layout
5

Beautiful Layouts with CardView and ScrollView

  • Building a UI using CardView and ScrollView
  • Creating a Tablet Emulator
6

The Android Lifecycle

  • Creating the Lifecycle Demo App
7

Java Variables, Operators, and Expressions

  • Understanding Java Syntax
8

Java Decisions and Loops

  • Understanding Loops
9

Learning Java Methods

  • Using Method Overloading
10

Object-Oriented Programming

  • Using Class
11

More Object-Oriented Programming

  • Using Encapsulation and Static Methods
  • Using inheritance
12

The Stack, the Heap, and the Garbage Collector

  • Using Buttons and TextView Widgets
13

Anonymous Classes – Bringing Android Widgets to Life

  • Exploring Widgets
14

Android Dialog Windows

  • Creating a Dialog Window
15

Arrays, Maps, and Random Numbers

  • Creating an App using Array
  • Using Dynamic Array
  • Using Multidimensional Array
16

Adapters and Recyclers

  • Adding and Displaying Notes Using RecyclerView, RecyclerAdapter, and ArrayList
17

Data Persistence and Sharing

  • Adding Settings Page to an App
18

Localization

  • Running App in German or Spanish
19

Animations and Interpolations

  • Using Animations
20

Drawing Graphics

  • Using the Canvas
  • Using Bitmap Manipulation
21

Threads and Starting the Live Drawing App

  • Creating the Live Drawing Project and Implementing the Game Loop using Thread
22

Particle Systems and Handling Screen Touches

  • Implementing a Particle System Effect
23

Supporting Different Versions of Android, Sound Effects, and Spinner Widget

  • Creating a Sound App using a Spinner Widget
24

Design Patterns, Multiple Layouts, and Fragments

  • Creating a Device Detection App
  • Creating a Fragment App
25

Building a Simple Image Gallery App

  • Building an Image Slider App
26

Advanced UI with Navigation Drawer and Fragment

  • Creating a Simple Database Project

Any questions?
Check out the FAQs

Still have unanswered questions and need to get in touch?

Contact Us Now

This is a beginner-friendly course and there are no formal requirements as such but some basic experience in programming like Java or C++ will help you understand the concepts better.

You’ll be learning Java programming language.

You’ll learn a new skill and you’ll be able to express your creativity by building beautiful apps. It will help you advance in your life and make a career in Android development.

Learning Android programming will open doors to lucrative job opportunities in the IT field. You can apply for the role of Android developer, mobile app developer, software engineer, or mobile game developer.

There is no specified duration as it is a self-paced course that you can complete at your own pace. It includes 29+ interactive lessons, 35+ Live Labs, and video tutorials.

Related Courses

All Course
scroll to top