Android-Developer-Fundamentals-Version-2 icon indicating copy to clipboard operation
Android-Developer-Fundamentals-Version-2 copied to clipboard

Codelabs for Google's Android Developer Fundamentals Course (Version 2)

Practicals for Google's Android Developer Fundamentals Course

This repository contains all the answers to the codelabs for Google's Android Developer Fundamentals Practicals Version 2 Course

The course concepts can be found here.

Please note that this is not the official repository for the course. It doesn't contain starter projects for the practicals but rather the completed solutions to the tasks and challenges given.

Author

Mahak Aggarwal

Additional Notes

  • Android Version: Varies from project to project
  • Android Studio Version: 3.1.4 and above (Android Studio is updated when a new stable version is released)
  • Gradle Version: 4.4 and above

All apps in this repository are made using java.

Projects for section 1.1 to 3.3 are from version 1 of the course. Not repeated because of similarities. These projects are mostly the same as version 2 but with minor changes. Projects after section 3.3 are from version 2 of the course. Some projects (section 9.2 onwards) use AndroidX libraries instead of the deprecated Android Support libraries.

All homework question and answers are in the MainActivity.java file of the homework projects.

The repository is complete and all projects work properly as intended.

Android Version (Target API)

Some projects in this repository target Android API 19 and later while others target API 21 and later.

Contents

  • 1.1 Android Studio and Hello World
  • 1.2 Part A Your first interactive UI
  • 1.2 Part B The layout editor
  • 1.3 Text and scrolling views
  • 1.4 Learn to help yourself
  • 2.1 Activities and intents
  • 2.2 Activity lifecycle and state
  • 2.3 Implicit intents
  • 3.1 The debugger
  • 3.2 Unit tests
  • 3.3 Support libraries
  • 4.1 Clickable images
  • 4.2 Input controls
  • 4.3 Menus and pickers
  • 4.4 User navigation
  • 4.5 RecyclerView
  • 5.1 Drawables, styles, and themes
  • 5.2 Cards and colors
  • 5.3 Adaptive layouts
  • 6.1 Espresso for UI testing
  • 7.1 AsyncTask
  • 7.2 AsyncTask and AsyncTaskLoader
  • 7.3 Broadcast receivers
  • 8.1 Notifications
  • 8.2 The alarm manager
  • 8.3 JobScheduler
  • 9.1 Shared preferences
  • 9.2 App settings
  • 10.1 Part A Room, LiveData, and ViewModel
  • 10.1 Part B Deleting data from a Room database