The radio station at my college has an iOS app (that's been abandoned) but no Android app at all to speak of. I thought I should fix that and make it so that the app can stay updated without me needing to go back and change things.

What it does

It lets people listen to the 20hr/day live stream of the radio show, and the archives for the last two weeks of every show's two hour timeslots. All without buffering for more than a second.

How I built it

I used Android Studio and Java. I experimented a bit with Kotlin but I just didn't quite get the hang of it yet and the mix between Java and Kotlin in the same project weirded me out. Other than that I just constantly debugged it from my phone.

Challenges I ran into

Most media players for Android can't handle live streams or the huge files that we get in the archive's 2 hour recordings. So it was a challenge finding the right tools around that. The website itself has almost no useful things for scraping either. No good id tags or anything other than the headers we can kind of use. So instead it was a challenge to just get all the big download strings and then having to get out the date to get in the correct tab and changing everything out too when they hit the next tab.

Accomplishments that I'm proud of

I tried my hand at web scraping and a lot more use of the network than I'm usually comfortable with. Asynchronous operations and working with all those listeners were always kind of a dangerous area for me but I think I'm getting pretty solid with them now. It almost maybe makes sense. I also put in that dark theme which makes me really happy just because I always think about developers that go that extra mile and I'm happy that I could be one of those.

What I learned

I learned that the most important thing is to power through and never give up. As long as you're making progress, even if it's super small progress, because you'll get there eventually. And once you're there the hard part is behind you and you made it! There were a lot of times that I thought I should just not bother and do homework instead but I'm very glad I stuck with it. Now I have an app that's pending for release on the Play Store! :)

What's next for WTBU Android

Built With

Share this project: