Skip to content

Latest commit

 

History

History
53 lines (36 loc) · 2.99 KB

README.md

File metadata and controls

53 lines (36 loc) · 2.99 KB

KotlinYouTube

KotlinYouTube is an Android mobile application that renders hit music videos by parsing JSON through YouTube Data API.

Features & Functionalities

Home

  • Users to sign in with email and password to view the home page (Email: [email protected], Password: 123456)
  • Fetch videos from a YouTube video playlist, display thumbnail image, video title, channel profile image, channel name, and published time from the network through YouTube Data API
  • Swipe to refresh the video playlist
  • Users to enter search term and filter videos in the playlist, search terms will be highlighted in blue
  • Click on favorite button in the video list to add videos to favorite list collection
  • Click on star button (upper right corner) to see real-time favorite list, click favorite button to remove videos from the list
  • Click on the video thumbnail to redirect to one video view

One Video

  • Fetch and display video title (ellipsize in the action bar), video, number views, published time, number of likes, dislikes and comments from the network through YouTube Data API
  • Click on the YouTubePlayerView to play video (if video is not available in the app, then user can view videos on YouTube web page, see the following step)
  • Click on the YouTube search icon (upper right corner) to redirect to a WebView (the real YouTube web page)
  • Click on chevron button to expand or fold description text view
  • Click on the up next video thumbnail and redirect to the YouTube web page
  • Show content in a ScrollView

API

Data

  • JSON - JavaScript Object Notation is an open standard file format
  • Json Parser Online - featuring tree view and syntax highlighting

Technology

Platform

  • Android Studio - the official integrated development environment for Google's Android operating system

Language

  • Kotlin - a cross-platform, statically typed, general-purpose programming language with type inference

Libraries

  • Firebase - a platform developed by Google for creating mobile and web applications
  • Retrofit - turns HTTP API into a Java interface
  • OkHttp - an HTTP client for Android and Java applications
  • Gson - provides a powerful framework for converting between JSON strings and Java objects
  • Picasso - allows for hassle-free image loading in application
  • CircleImageView - a fast circular ImageView perfect for profile images