first peek at new UI + iOS sync improvements
Pre-release
Pre-release
shankari
released this
06 Mar 09:11
·
4799 commits
to master
since this release
The three big changes for this release are:
- Thanks to some awesome work by @krisma, based on thoughtful design by
@epai, we have a new trip list UI. This is strictly less functional than the
the previous UI because it doesn't not have as much detail on the sections,
but we wanted to give everybody a sneak peek to get some early feedback.- This is a variation of Eric's design from the SDB meeting with maps added.
Our instant focus group felt that the maps made it easier to recall what
had happened than just the textual place and the time since a picture is worth a
thousand words. Thoughts? - Next week, we plan to add a trip detail screen that will show more details
about the sections, have zoomable maps, and hopefully add some comparisons
to your stats. That should restore and exceed the functionality of the
current version, but with a MUCH more usable UI.
- This is a variation of Eric's design from the SDB meeting with maps added.
- This release should also make Randy happy since it removes the popup on zero trips.
- I finally fixed iOS sync. At least on some phones, in spite of remote pushes
being received correctly, data was not really pushed to the server. After a
day spent focusing entirely on this, I finally have it all working, at least
on a test phone that reliably had the problem earlier. iOS users, do you
notice that the syncs are working properly without force syncing? - I finally fixed an android issue with getting the last location that I had
deferred for a while. Our three main android testers haven't run into it yet,
but two others have and I thought it was time to make it more robust and
bring it in line with the iOS code.
Full list of changes:
Cross-platform
- New version of the trip diary screen thanks to @krisma (0cdcccc)
- Removal of the no trips popup, as requested by Randy (488308b)
- Reload the diary when the sync completes to ensure that the cached view is updated (488308b)
iOS
- Fix the sync!
- A token refresh is pre-emptively generated on every remote push notification so that it can run in parallel with the message creation and increase the chances that the refresh will finish within 30 seconds (shankari/e-mission-data-collection@c217577)
- Switching to the new JWT library, and to the new session fetcher library makes our remote calls actually run properly in the background (e-mission/cordova-jwt-auth@12f96c6, e-mission/cordova-server-communication@4496bc0)
Android
- Read the location to create the geofence using a new location tracking request and a new intent service. This fixes issue e-mission/e-mission-data-collection#65 - the case that the lastLocation is NULL, which has been reported twice so far, by @changun and @hariv (shankari/e-mission-data-collection@28786c7)
- Fix issue with restarting tracking on an upgrade. Since we had the version check and the initialize code in the plugin_init, it would not be invoked until the user launched the app, which may take a while after the upgrade is complete. Moving it to the sync code ensures that we start tracking again almost immediately, with no user intervention (shankari/e-mission-data-collection@5544afd)