Become an Android Developer.
This is a repository where I will be posting the apps that I built during my Nanodegree program study.
For intermediate Java developers pursuing Android specialization, this program teaches the tools, principles, and patterns that underlie all Android development.
The skills you learn in this Nanodegree program will help you master the existing platform, and prepare you for the exciting opportunities in Android's future.
- Developing Android Apps, Stage 1
- Developing Android Apps, Stage 2
- Advanced Android App Development
- Gradle for Android and Java
- Material Design for Android Developers
- Android Wear Development
- Capstone
- Create a detailed plan, including UI mocks and technical specifications, for building app
- Take the skills that I've learned across your Nanodegree journey and apply it to an app idea
Certificate: Verified Certificate of Completion
Project: Habito
Simple habit tracker with Firebase Services and detailed charts.
Toy apps:
- FriendlyChat a Firebase demo project
ListViews, Activities, Intents, Content Providers
- Build and deploy apps on Android devices
- Present and use network resources in your apps
- Navigate between multiple screens in an app
- Create databases and use Content Providers to manage access to your data
- Create responsive user interfaces that work across a variety of screen sizes
- Keep your app running efficiently with the Use of AsyncTasks and Loaders
Project: Popular Movies
Create an app that allows users to discover recent and popular movies.
This app consists of two parts. In the first, you’ll build a clean UI, sync to a server, and present information to the user. In the second, you’ll add a tablet layout with detail views for each movie, allowing users to favorite certain films.
Toy apps:
- FavoriteToys - present scrollable data in ScrollView with nested TextView
- GithubQuery - connect to the Internet and communicate with GitHub API
- RecyclerView - learn about the components that convert a list of data into visual UI elements
- Sunshine is a weather forecast app
The Application Lifecycle, Preferences, SQLite Databases, Content Providers, Background Tasks, Responsive Layout
- Understand the phases of the Android application lifecycle
- Learn how to persist data between orientation and other changes
- Allow users to customize some aspects of your app using Preferences
- Implement an SQLite database and make queries to and modify that database in app
- Learn how Content Providers provide an interface to share data and consume data from an already existing ContentProvider
- Learn how to efficiently implement Background Tasks
Project: Popular Movies
Add onto Popular Movies Stage 1 project a detail view for each movie, allowing users to ‘favorite’ movies, and adding a persistence.
Toy apps:
- Visualizer - use the SharedPreferences to allow users to customize some aspects of app
- Waitlist - create SQLite database, save and query data using SQLiteOpenHelper class
- Quiz-Example - consume data from an already existing ContentProvider
- ToDo-List - build SQLite database and use ContentProvider to get the data
- Hydration-Reminder - learn how to schedule background tasks and present notifications
- BoardingPass - learn ConstraintLayour
- VisualPolish - create responsive user interfaces
- Sunshine - weather forecast app, that demonstrates every covered aspect in the course
Handle Error Cases, Accessibility and Localization, 3rd Party Libraries, Google Cloud Messaging, Material Design, Google Places API, Tablet UI, Performance Profiling
- Understand the process of productionizing an app, using Sunshine the weather app
- Android Core App Quality Guidelines
- Material design approaches
- Image-handling
- Performance profiling
- Accessibility features
- Localization
- Widgets
- Libraries
Project: Stock Hawk
Productionize an app, taking them from a functional state to a production-ready state. Find and handle error cases, add accessibility features, allow for localization, add widgets, and add a library.
Toy apps:
- Sunshine is a weather forecast app
Gradle, Compile and Package apps, Build Process, Build Automation, Continuous Delivery of Software
- Explore how the Gradle build tool compiles and packages apps
- Learn about how to customize the build process
- Build automation, and continuous delivery of software
- Free and paid flavors
- Create and integrate Android libraries
- Android app testing
Project Build it Bigger
Use Gradle to build a joke-telling app, factoring functionality into libraries and flavors to keep the build simple. Configure a Google Cloud Endpoints development server to supply the jokes.
Android Design Fundamentals, Surfaces, Bold Graphic Design, Motion, Adaptive Design
- Learn how to apply the material design principles
- Android design fundamentals
- Transform design elements of sample apps to meet Android design concepts
- Understand how to create and use material design elements, surfaces, transitions and graphics in apps, across multiple form factors
Project XYZReader
Implement Android design concepts and transform a functional news reader app using material design techniques.
Android Wear Development, Android TV and Google Cast Development, Android Auto Development
- Android Wear application structure
- Share information between the wearable and the companion phone or the cloud.
- Design great user experiences for wearables including how to take advantage of the always-on display of Android Wear devices.
Project Sunshine-Advanced
Let users access the weather at a glance by building a Sunshine watch face for Android Wear.
Toy apps:
- AndroidWearFirstProject is a Android Wear 'Hello World' project
- WearCounter example of sending and syncing data across wear and mobile apps
- GridViewPager GridViewPager sample project
- SynchronizedNotifications notifications across Android Wear and phone app
- WatchFace demonstrate how to build watch faces for the Android Wear
- TVDemo Android TV sample project
- ControllerSample Android TV asteroids game
- AutoMessaging Android Auto Messaging demo project
- MessagingService MessagingService demo project
- MinimalAutoMedia a complete sample of the Android Auto media player
- UniversalMusicPlayer an audio media app that works across multiple form factors and provide a consistent user experience on Android phones, tablets, Android Auto, Android Wear, Android TV and Android Cast devices
- MyWatchFace a digital watch face for Android wear powered smartwatch, also control the background color and the time and date colors of watchfacec from inside the Android Wear application on mobile device