An android app that shows recipes' steps and contains a widget.
This app fetches a list of recipes from the network and displays them to the user. Then the user can select the desired recipe and be presented with step by step video instructions. The app supports both phones and tablets (using master/ detail flow design), portrait and landscape orientations, using fragments. It also contains a home screen widget presenting the selected recipe's ingredients. Finally the app contains UI tests using the Espresso Framework.
It was submitted to Udacity's Android Developer Nanodegree and passed successfully.
In this project you will:
- Use MediaPlayer/Exoplayer to display videos.
- Handle error cases in Android.
- Add a widget to your app experience.
- Leverage a third-party library in your app.
- Use Fragments to create a responsive design that works on phones and tablets.
- App should display recipes from provided network resource.
- App should allow navigation between individual recipes and recipe steps.
- App uses RecyclerView and can handle recipe steps that include videos or images.
- App conforms to common standards found in the Android Nanodegree General Project Guidelines.
- Application uses Master Detail Flow to display recipe steps and navigation between them.
- Application uses Exoplayer to display videos.
- Application properly initializes and releases video assets when appropriate.
- Application should properly retrieve media assets from the provided network links. It should properly handle network requests.
- Application makes use of Espresso to test aspects of the UI.
- Application sensibly utilizes a third-party library to enhance the app's features. That could be helper library to interface with Content Providers if you choose to store the recipes, a UI binding library to avoid writing findViewById a bunch of times, or something similar.
- Application has a companion homescreen widget.
- Widget displays ingredient list for desired recipe.