Skip to content

henrylao/Flickster

Repository files navigation

Flickster Part 2

User Stories

REQUIRED (10pts)

  • (8pts) Expose details of movie (ratings using RatingBar, popularity, and synopsis) in a separate activity.
  • (2pts) Allow video posts to be played in full-screen using the YouTubePlayerView.

BONUS

  • Implement a shared element transition when user clicks into the details of a movie (1 point).
  • Trailers for popular movies are played automatically when the movie is selected (1 point).
    • When clicking on a popular movie (i.e. a movie voted for more than 5 stars) the video should be played immediately.
    • Less popular videos rely on the detailed page should show an image preview that can initiate playing a YouTube video.
  • Add a play icon overlay to popular movies to indicate that the movie can be played (1 point).
  • Apply data binding for views to help remove boilerplate code. (1 point)
  • Add a rounded corners for the images using the Glide transformations. (1 point)

PERSONAL TWEAKS

  • Implement gathering of all movies that are showing in theaters
  • Implement a user login

App Walkthough GIF

TODO:// Add the URL to your animated app walkthough gif in the image tag below, YOUR_GIF_URL_HERE. Make sure the gif actually renders and animates when viewing this README. (🚫 Remove this paragraph after after adding gif)



Notes

  • Researching and implementing the shared element transition proved to be challenging requiring refinement of understanding of the components involved
  • Implementing the data binding for views was initially ambiguos and required further research before proceeding with implementation

Flickster Part 1

User Stories

TODO:// In the User Stories section below, add an x in the -[ ] like this - [x] for any user story you complete. (🚫 Remove this paragraph after after checking off completed user stories)

REQUIRED (10pts)

  • (10pts) User can view a list of movies (title, poster image, and overview) currently playing in theaters from the Movie Database API.

BONUS

  • (2pts) Views should be responsive for both landscape/portrait mode.

    • (1pt) In portrait mode, the poster image, title, and movie overview is shown.
    • (1pt) In landscape mode, the rotated alternate layout should use the backdrop image instead and show the title and movie overview to the right of it.
  • (2pts) Display a nice default placeholder graphic for each image during loading

  • (2pts) Improved the user interface by experimenting with styling and coloring.

  • (2pts) For popular movies (i.e. a movie voted for more than 5 stars), the full backdrop image is displayed. Otherwise, a poster image, the movie title, and overview is listed. Use Heterogenous RecyclerViews and use different ViewHolder layout files for popular movies and less popular ones.

  • Implement deep scroll past the given 20 movies.

  • Allow user to view details of the movie including ratings, genre and popularity in a seperate view.

  • Create feature for viewing video trailers in both portrait or landscape mode.

  • Create a feature for user account(basic info) and storing movies of interest

  • Implement star rating display feature on itemized view:

    • Portrait mode
    • Landscape mode

App Walkthough GIF



Notes

  • Still experiencing difficulties when configuring the stars to be properly displayed need to do a little bit more research into the rating bar widget
  • Still experiencing issues with images not being displayed despite async client properly fetching image urls requiring inclusion of android:usesCleartextTraffic="true" in the android MANIFEST.

Open-source libraries used

  • Android Async HTTP - Simple asynchronous HTTP requests with JSON parsing
  • Glide - Image loading and caching library for Android

About

A simple Android application where a user can browse various movies that integrates usage of a REST API backend build during Codepath Spring 2021

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages