Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/codeamt/bakingapp

A Companion Baking App for DIY Bakers.
https://github.com/codeamt/bakingapp

android grow-with-google udacity-android-nanodegree

Last synced: about 2 months ago
JSON representation

A Companion Baking App for DIY Bakers.

Awesome Lists containing this project

README

        


#GrowWithGoogle Android Development Project:
BakingApp

For the fourth project of the Grow With Google Developer Scholarship Program (and, conjointly, Udacity’s Android Development Nanodegree program), students were asked to build and design a recipe app (written in Java) that delivers step-by-step baking lessons to the end user. This app also has a home screen widget for easy access to instructions for the current recipe.



## Learning Objectives


Incorporating Exoplayer for Media



This project called for using Exoplayer to display instructional videos parsed from a retrieved JSON object. The most challenging/rewarding learning experience with Exoplayer was figuring out how to handle unexpected inputs from recipe objects (e.g., cooking steps with no instructional videos).



Esspreso and Writing Tests

In prepartion for becoming a professional Android Developer, this project takes a TDD approach and incorporates idling resources to ensure that activities and UI components function as expected.





Creating A Home Screen Widget



Probably the most exciting learning experience of this project was developing a partnering home widget app to provide easy access to a selected recipe's steps.


Master-Detail Flow and Fragments



Students were asked to implement the Master-Detail Design pattern to ensure that apps offer an optimal experience across device types.

## Versioning and Dependencies

Target SDK Version: 27
Minimum SDK Version: 15

Libraries:
- com.android.support:appcompat-v7:27.1.1
- com.android.support:recyclerview-v7:27.1.1
- com.android.support:cardview-v7:27.1.1
- com.google.code.gson:gson:2.8.2
- com.squareup.retrofit2:retrofit:2.4.0
- com.squareup.retrofit2:converter-gson:2.4.0
- com.google.android.exoplayer:exoplayer:r2.0.4
- com.android.support:support-annotations:27.1.1
- com.squareup.picasso:picasso:2.5.2
- com.android.support.constraint:constraint-layout:1.1.2
- com.android.support:support-v4:27.1.1
- com.android.support:support-annotations:27.1.1
- com.jakewharton:butterknife:8.8.1

Testing Dependencies:
- com.android.support.test.espresso:espresso-contrib:3.0.2
- com.android.support.test.espresso:espresso-core:3.0.2
- com.android.support.test.espresso:espresso-intents:3.0.2
- com.android.support.test:rules:1.0.2
- com.android.support.test:runner:1.0.2
- com.android.support:support-annotations:27.1.1

App Repositories:
- Google
- JCenter

Android Studio Version: 3.1.2 (Stable Release)