YOU must download AND process the GTFS bus/rail schedules YOURSELF! Think of this like OSMAnd but for transit - you obtain the GTFS data zip file from your transit provider, download and process it (requires SQLite on your computer and the ability to run the mksql3db.sh shell script at https://github.com/wbrenna/GTFSOffline/blob/master/data/mksql3db.sh), Gzip the *.db file, download it to the phone's Download folder, and use "Scan Downloads Folder" from within the app. Links to some of the databases I use are at http://wbrenna.ca/gdrivefilelist.txt. Navigate to the goo.gl link on the phone, and it will download the *.db.gz file. Then, just "Scan Downloads Folder" and activate the database in Settings. If you donate I will be more inclined to keep a database updated for you :)
The app supports an unlimited number of these databases, and it will use the current GPS lock to find the nearest bus stops and bus times. A long-press on any of these bus stops will save them in a favourites tab.
Databases known to work: GO Transit, Grand River Transit, MiWay, Metrobus, Saskatoon Transit, TTC.
Permissions: only GPS is required (in theory). The app cannot communicate with the internet and does not modify external storage. It requires the external storage permission to write to its own files directory - in the interest of it being useful to more people, I require storage permissions to access the app's /files directory. One day, when everyone is on >=4.4 I will simply take that permission away.
See http://github.com/wbrenna/gtfsoffline for the source code and http://wbrenna.ca/wilson/projects/gtfsoffline.php for a longer description of the app.
Donate: 1wi1sonE2R836gyFEXpMxEpU2owT7DosG (Bitcoin)
Market link: com.wbrenna.gtfsoffline
Web site: http://github.com/wbrenna/gtfsoffline
Market downloads: 100-500
Market rating: 4.5 / 5.0