This app was mentioned in 8 comments, with an average of 6.75 upvotes
I use a combination of TransitDB for bus schedules and Google Map's saved offline areas for routing.
Download TransitDB app on your android phone. You can add your Compass and view your balance. It also has an option to alert you if your balance gets below $5.00.
My favourite Transit app is TransitDB Vancouver, mostly because it's 100% offline. But if you have a data plan, the Transit App has worked well for me, it shows real-time locations of the buses.
There's this app called TransitDB that has all the schedules for buses in the region, fully offline. Only time you'll need data is if you want to load route maps or loading "nearby" stops but everything else is usable offline. Uses around ~9MB of storage if you wondering should you have a phone with shitty storage memory (I had to experience that once)
If you don't care about live info, TransitDB is good. You can check your Compass balance with it too. Otherwise, Transit App works on iOS and Android.
TransitDB is good android app that autoloads your UPass for you.
Transit is good for realtime info if you have data.
If there's ever transit problems (skytrain stuck on bridge, snowmaggedon), their twitter and site are where to find out what's going on. The mods and ppl here also post PSAs here if there are major issues with transit.
Noise canceling earphone/buds are your friend for music, podcasts, audiobooks. I'll also recommend a kindle for reading on your commute.
TransitDB is my favorite. It can even auto load your upass if you want. https://play.google.com/store/apps/details?id=ca.transitdb.mobile.android
If you have an Android, TransitDB Vancouver is a much better app imo