Giter VIP home page Giter VIP logo

worldofyoutube's Introduction

WorldOfYoutube

Overview

WorldOfYoutube is an Android app that displays the most popular youtube videos by region and category. It uses the Youtube Data API to retrieve to the most popular videos. The user selects the region in which the videos are from, the category that the videos pertain to and the number of videos to return. When a user selects a video, they can choose to watch in the youtube app on their device or elsewhere.

What I've learned

I've learned a lot about threading and in particular AsyncTask. For me, this was the most difficult part of the project. I also learned how to use and integrate an API into an Android app. This includes adding it the project's dependicies and acquiring the correct API key. In order to use the Youtube Data API, you need a Browser API key and not an Android API key. The latter is required in order to use the Android Player API. This took me hours find out. Afterwards, learning how to integrate the code availabe from the API into my project was also difficult. Since this application requires Internet access, a lot of the methods used were done in an AsyncTask method. Another important thing I learned by doing this project is basic project structure. I know that currently the project isn't structure professionally but it's a step in the right directions. Overall, this project was really fun to make and I have discovered a ton of new cat videos from Japan!

Improvements

There are a lot of major improvements that can be done to this app. A major thing that this app is missing is appropriate exception handling. At the moment, there are a few instances in which the app crashes when it shouldn't. Also, it doesn't check if the device is connected to the Internet and whether the device has the Youtube app installed. In addition to exception handling, testing needs to be done. Test suites needs to created in order to make sure that the basic components of the app actually work. Another major component of the app that needs to get fixed is the GUI. Currently, the GUI is very primitive and doesn't use Google's Material Design. It also doesn't take into account screen size and thus will look really different across devices. In addition to the GUI, the UX of the app needs to get fixed. Lastly, the app needs a decent app icon as opposed to the default one.

API KEY

Since I have been having difficulty removing my API KEY from this repository's commit history, I have revoked the API KEY and left them in this code. Thus, if you fork this repo, you'll have to create your own Youtube Data v3 API KEY.

Disclaimer

Some of the code in this project is not mine such as the code required to download the thumbnail for the videos and SingleFragmentActivity.

worldofyoutube's People

Contributors

mikerah avatar

Stargazers

JLegendary avatar

Watchers

James Cloos avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.