An open API service indexing awesome lists of open source software.

https://github.com/lazauk/udacityprojects-androidbasics

These are my projects, built and submitted as a part of Udacity's "Android Basics by Google" Nanodegree Program.
https://github.com/lazauk/udacityprojects-androidbasics

android udacity

Last synced: 7 months ago
JSON representation

These are my projects, built and submitted as a part of Udacity's "Android Basics by Google" Nanodegree Program.

Awesome Lists containing this project

README

          

# "Android Basics by Google" - Nanodegree Program at Udacity
[Udacity](https://www.udacity.com/) offers great range of various training programs and courses, grouped by the so-called "schools": "Data Science", "Artificial Intelligence", "Programming", "Autonomous Systems", "Cloud Computing" and "Business".

I kept some of their Nanodegree (ND) programs in my wishlist for a while, with intention to enrol sometime in the future when I would have more of the free time (dreams, sweet dreams.. :zzz:). However, when Udacity announced free 30-days access to all of their NDs at the end of March 2020, I had no more excuses and decided to start my first ND program - "Android Basics by Google".

I officially pledged to the "30 Days of Udacity" (:hand:) and committed to spend 1-2 hours per day (:muscle:) to learn the basics of the Android Apps development. Program itself has started on **26th of March**, and I managed to get my last (8th!) project approved and graduated on **22nd of April**, just days before the deadline!

My "Android Basics Nanodegree by Google" certificate can be verified [here](https://graduation.udacity.com/confirm/SM4QGCSR).

This repo contains all the main projects I've built and submitted as a part of my study. Really great course (which exceeded my expectations - :star2: !) with an excellent content and a very knowledgeable tutors (who are themselves Developer Advocates at Google!). Strongly recommend to anyone who wants to get into the field of the mobile app development - :thumbsup: !

## Making an App Interactive: Tennis Score Keeper
| App Screenshot | App Description |
| --- | --- |
| ![ScoreKeep](/images/project_scorekeeper.png) | This app can be used to keep the score of the big tennis' game.

It demonstrates the use of:
- **ConstraintLayout** and **LinearLayout** view groups;
- **TextView**, **ImageView** and **Button** views.

**Note:** target API level is 28 (Android 9), although this app supports the minimum API level of 24 (Android 7.0).|

## Object-Oriented Programming: Solar System Quiz
| App Screenshot | App Description |
| --- | --- |
| ![SolarQuiz](/images/project_solarquiz.png) | This app ports to Android platform the BBC Earth's [Solar System Quiz](https://www.bbcearth.com/blog/?article=solar-system-quiz).

It demonstrates the use of:
- **ScrollView** view group;
- **EditText**, **RadioGroup**, **RadioButton** and **CheckBox** views;
- Debugging / assertion with **Log** class;
- Notification with **Toast** class;
- Localisation (*English* and *Russian*).

**Note:** target API level is 28 (Android 9), although this app supports the minimum API level of 24 (Android 7.0).|

## Multi-Screen App: Eurovision 2019 Finalists
| App Screenshot | App Description |
| --- | --- |
| ![Eurovision](/images/project_eurovision.png) | This app shows the list of [Eurovision 2019 finalists](https://eurovision.tv/event/tel-aviv-2019/grand-final).

It demonstrates the use of:
- **ArrayList** for dynamic data upload;
- **ListView** and **ArrayAdapter** to recycle views and optimise memory use;
- **Activity** and **Intent** to switch between the screens;
- **EventListener** to detect click events.

**Note:** target API level is 28 (Android 9), although this app supports the minimum API level of 24 (Android 7.0).|

## Multi-Screen App: Samarkand City Guide
| App Screenshot | App Description |
| --- | --- |
| ![Samarkand](/images/project_samarkand.png) | This app is a city guide for Samarkand (Uzbekistan), based on this [Wiki Voyage page](https://en.wikivoyage.org/wiki/Samarkand).

It demonstrates the use of:
- **Fragments** as a modular section within **Activity**;
- **ViewPager** to swipe between UI screens;
- **TabLayout** to enable switch between UI screens via Tabs.

**Note:** target API level is 28 (Android 9), although this app supports the minimum API level of 24 (Android 7.0).|

## Networking: Guardian News Reader
| App Screenshot | App Description |
| --- | --- |
| ![NewsReader](/images/project_newsreader.png) | This app retrieves Android-related articles from the Guardian's [API Endpoint](https://content.guardianapis.com/search?q=android&api-key=test&show-references=author)

It demonstrates the use of:
- **Uri.Builder** for the programmatic URL query parameters;
- **org.json.** library for the JSON parsing;
- **AsyncTaskLoader** for threading.

**Note:** target API level is 28 (Android 9), although this app supports the minimum API level of 24 (Android 7.0).|