Summary
Built a celebrity guessing app as part of clip #84 of The Complete Android 8.0 Oreo Developer Course by Rob Percival and Nick Walter.
The goal of this exercise was to practice downloading things from the internet using AyncTask (which is actually deprecated...).
Deviated somewhat from the task at hand as the website used in the course is no longer available. So I drew inspiration from Kpop.
Code
kuanp / SoYouThinkYouKnowKpop
Modified version of Guess The Celebrity
Screenshot
Main Challenge
The biggest challenge for this assignment is finding a website that has nice looking HTML to parse. I sourced content from https://kingchoice.me; this website contains a lot of "celebrity lists" with nice HTML.
For example: https://kingchoice.me/topic-hot-100-kpop-idols-rankings-2019-close-dec-31-1225.html
I also found it to be overly tedious to try to create a regex to search through HTML. After all, it's semi-structured information, so instead I used Jsoup to parse the HTML and get the elements I needed. Others may want to do the same. Tutorials: link
Additional interesting things of note
- Used Java8; the stream / lambda paradigm is very powerful
- Used Lombok; its EqualsAndHashCode capability is great for deduping objects.
- Always fun to try to break the logic into many classes
- Was too lazy to properly handle exceptions. Oh well...
- Wonder how to use Futures or other concurrency features; pretty sure I locked UI thread while loading stuff for this one.
Top comments (0)