Skip to content

Releases: pashri/bustimes-android

v0.14.0 — the bus you pick stays picked

Choose a tag to compare

@pashri pashri released this 08 Oct 19:42
53ffd74
  • Selecting a bus no longer jumps to another bus on the same route a few seconds later; the journey view now follows the bus you tapped, along with its own delay (#32)

v0.13.0 — see when a late bus will reach your stop

Choose a tag to compare

@pashri pashri released this 08 Oct 19:24
951e9d6
  • When a tracked bus is running late, the journey view now shows an expected time at each stop still ahead, worked out from the bus's current delay, instead of only the timetable (#28)
  • White and near-white buses get a black outline on the map, so they no longer disappear into their white ring (#27)
  • Behind the scenes: the map's polling and pause/resume behaviour is now covered by automated tests (#29)

v0.12.0 — a more distinct look

Choose a tag to compare

@pashri pashri released this 11 Sep 23:38
ab37e5c
  • New type scale, shape scale, and a blue accent color, replacing stock Material3 defaults
  • Line numbers now show as outlined badges, lateness as a filled status pill, and departure times use tabular numerals so they stop jittering on refresh
  • Map selection and the selected route no longer share colors with "late" or "on time" status: selection is blue, the on-route line and its stops are mustard
  • Fixed the map's locate/favourites buttons, which were unintentionally rendering stock Material purple instead of the app's own colors

v0.11.0 — more reliable when the network or GPS misbehaves

Choose a tag to compare

@pashri pashri released this 11 Sep 21:53
d35a2cd
  • Retries a failed request instead of giving up on a one-off network blip, and stops hammering a dead endpoint when the failure isn't transient (#22)
  • No longer reports a parsing bug as "offline" — connectivity and app errors are now shown separately (#22)
  • "Locate me" always moves to your current position instead of sometimes doing nothing if you hadn't moved far (#22)
  • The bus-position fade now starts at the same point its age label does, instead of holding full opacity for a minute past that (#22)
  • Shows a "+N more nearby" hint when a busy corridor has more buses on a service than are drawn (#22)

v0.10.0 — bus stop arrows only when you're zoomed in

Choose a tag to compare

@pashri pashri released this 11 Sep 21:21
  • The stop bearing wedge added in 0.9 is now only drawn once zoomed in close, instead of on every stop at typical browsing zoom (#20)

v0.9.0 — tap stops more easily, see which way they face, and open the right bus

Choose a tag to compare

@pashri pashri released this 11 Sep 20:53
  • Tapping a stop now hits a 24dp-wide target instead of the ~10px drawn circle, so it no longer takes precise aim (#13)
  • Stops now show a small arrow for the direction their flag faces, so a two-way road's pair of stops are tellable apart at a glance (#14)
  • Tapping a tracked departure opens the correct bus instead of an unrelated one elsewhere in the country (#15)

v0.8.0 — you can see which stop you picked

Choose a tag to compare

@pashri pashri released this 11 Sep 19:19
2a1a0a2

Tapping a stop used to change only the panel at the bottom. On a street with a dozen near-identical grey dots, nothing on the map said which one you had actually hit.

What you'll notice

The selected stop gets an orange ring. Tap a stop and it is ringed and filled orange, so the departures in the panel are tied to a place you can see.

It works on a route's calling points too. Tap a bus, then tap one of the stops along its line, and the ring is drawn around that calling point while the rest of the map stays played down.

The selected stop keeps its colour. When a route is selected everything else fades to grey. The stop you picked no longer fades with it.

Installs over 0.7 — same signing key, and your favourites are kept.

v0.7.0 — you can tell how old a bus position is

Choose a tag to compare

@pashri pashri released this 10 Sep 14:04
024e646

A bus position ten minutes out of date used to look exactly like a live one.

What you'll notice

Buses fade as their positions age. Full colour for the first two minutes, then a gradual fade that bottoms out at ten minutes. A washed-out bus is one whose position is old — it never disappears, so you can still tap it.

The direction arrow goes away after three minutes. That's the honest part. A three-minute-old bearing on a city route is often simply wrong, because the bus has turned since. Better no arrow than one pointing the wrong way.

Tap a bus and the panel tells you the age. 3 min late · updated 5 min ago. When the position is more than two minutes old the lateness loses its amber or green and goes grey — that figure is worked out from the position, so it's exactly as old as the position is. A green "on time" is a claim about now, and grey says plainly that it isn't.

Where the thresholds come from

Measured, not guessed: 1,827 buses sampled across Cambridge, London, Manchester and Glasgow, each aged against the server's own clock.

Around Cambridge, Stagecoach East is about three quarters of the buses on screen and reports a median of 46 seconds old, so the two-minute mark sits clear of a healthy feed — you shouldn't see fading on a normal Stagecoach bus.

Whippet is different. Its feed runs about five and a half minutes behind, so its buses — the U, the St Ives and Huntingdon routes — will sit permanently faded with no arrow. That's not a bug in the app. Those positions really are that old, and the panel will tell you so.

Elsewhere in the country feeds are slower, so the app warns more often. The numbers suit Cambridge on purpose.

It also keeps counting when the app can't reach the network

If your signal drops, the buses already on screen stay put — but they now keep ageing and fading on their own. Previously they'd have sat frozen at full colour while you looked at a picture that was getting older by the minute.

Installing

Download bustimes-0.7.0.apk and open it on your phone. It installs over v0.6.0 without losing anything — same signing key, higher version code, and both were checked against each other before this was published.

Android 8.0 (API 26) or later.

sha256  c4080724875315902c54c2e1cb7e00d7408fcb7f800b4709d575351fc2dd5fde

Small print

The fade is deliberately gentle in its first minutes, so the arrow disappearing is the thing you'll actually spot. Nothing is sent anywhere, and the age is worked out against the server's clock rather than your phone's, so a phone with the wrong time doesn't invent staleness.

Data

Everything comes from bustimes.org. Unofficial and not affiliated with it. Map data © OpenStreetMap contributors, tiles by OpenFreeMap.

v0.6.0 — favourite stops

Choose a tag to compare

@pashri pashri released this 08 Sep 19:50

Favourite stops.

Starring a stop

Open a stop and tap the star in its panel. The same star removes it again — there is no separate list to manage.

Getting back to it

A star button appears above the locate button once you have a favourite. Tapping it opens a menu of your stops; tapping one jumps the map there and opens its departures.

The menu puts your nearest stop closest to the button, so the stop you are most likely checking takes the least thumb movement. The order is worked out when the menu opens and then left alone, so nothing shifts while you are reaching for it. With location turned off it falls back to the order you added them.

The button only exists once you have starred something, so nothing changes until you use the feature.

Small print

Favourites are stored on the device and are never sent anywhere. They keep their own copy of each stop's name and position, so the menu works with no signal.

The compass now sits one place further up the stack, above the star button, and hides while the menu is open. A control that comes and goes shouldn't shove the ones that are always there.

Not favourite routes

Only stops, for now. A favourite stop has an obvious thing to show — the next few departures — whereas a favourite route's useful form is the map, which tapping any bus already gives you: its route, its siblings and everything else greyed out.

Installing

Download bustimes-0.6.0.apk and open it on your phone. It installs over v0.5.0 without losing anything — same signing key, higher version code, upgrade path tested.

Android 8.0 (API 26) or later.

sha256  89d65bd91245f871b2e26d758c85e31df3d5b58947072a19498058f24bc34f4f

Still not here

Search. Deliberate — this is a status-check app, and favourites was the answer to "get me to my stop quickly".

Data

Everything comes from bustimes.org. Unofficial and not affiliated with it. Map data © OpenStreetMap contributors, tiles by OpenFreeMap.

v0.5.0 — solid lines back, and a focused map

Choose a tag to compare

@pashri pashri released this 08 Sep 17:57

Fixes the dotted lines from v0.4.0, and makes a selected route much easier to read.

The dotted lines

Routes that follow roads draw as solid lines again. v0.4.0 expressed "solid" as a dash pattern with a single length in it, which the map reads as alternating dash and gap — so every proper route came out dotted. Solid and dashed are now genuinely separate, so this cannot recur.

Services with no road data still draw dashed, as intended.

Selecting a bus now focuses the map on it

Tap a bus and everything that isn't part of its service fades to grey — other buses lose their numbers and arrows, and the stops fade too, so the route and its calling points are what you actually see.

Other buses on the same service keep their colours and now draw their own routes, each in the colour of its own circle. Tap one 6 and you see where all the 6s are going.

The fading follows the route rather than the panel, so it stays while you look at a stop on that route, and doesn't happen when you tap a stop on the open map.

Stops appear sooner

Bus stops now show one zoom level further out than before. They shrink as you zoom out so that three hundred of them read as texture rather than clutter.

Departure boards

Live departures can be opened now. Tapping a departure with a real-time estimate did nothing at all before — bustimes links those differently from timetabled ones, and the app only understood the timetabled kind. At a busy stop that meant every row was dead.

Installing

Download bustimes-0.5.0.apk and open it on your phone. It installs over v0.4.0 without losing anything — same signing key, higher version code, upgrade path tested.

Android 8.0 (API 26) or later.

sha256  97567d9369df13f2f68b234b29b50b3952cc93d79b0eb4ea2bdb2919864fe1da

Still not here

Favourite stops and routes, and search. Both deliberate — this is a status-check app, so favourites is the intended next step.

Data

Everything comes from bustimes.org. Unofficial and not affiliated with it. Map data © OpenStreetMap contributors, tiles by OpenFreeMap.