Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP - Issue #116 - OBA Google Glass GDK #219

wants to merge 42 commits into
base: master
Choose a base branch


Copy link

@barbeau barbeau commented Feb 24, 2015

This is somewhat dated now (most recent work mid-2014), but I wanted to open this as a WIP so it doesn't get lost, and is more visible if someone else wants to contribute to the Glass work.

Options to install an alpha version (this PR contents):

  1. Download the current APK here, and follow these directions to install it on Glass, or...
  2. If you have the Android dev environment setup w/ GDK installed - run gradlew installDebug from root of project using command-line

OBA Glassware is activated by using voice commands "ok glass", then "show me transit times".


It will figure out your region (Puget Sound, Tampa, Atlanta, Washington DC, or York Canada):

...find the closest bus stop to your real-time location, and then show you the arrival times for that stop:

Times are refreshed every minute until you dismiss the Activity by swiping down. You can scroll up/down the list of arrival times by tilting your head up and down. You can pause/resume scrolling the list by long pressing with two fingers on the touch pad. Tapping with two fingers will automatically scroll to the top of the list. The arrow points towards your stop from your current position and orientation (so in the example above, you'd turn to your right a little over 90 degrees to face your stop).

Long-term goal is to get the GDK version of OBA Android merged back into the main project, hopefully using Gradle build flavors and/or project modules (see also work related to Wear in #181). Main differences between the main OBA app project and this PR is that Glass does not support the Google APIs add-on (including maps and GeoPoint object) or Google Play Services, and apparently has poor support for Fragments (hence use of a ListActivity instead of ListFragment). Most of the internal infrastructure for API calls and various utilities are the same, though, and could be shared between projects.

I'd like to get feedback from others for what features they'd like to see, so please let me know what features you think would be useful.

See #116 for more details.

barbeau and others added 30 commits Mar 24, 2014
…your real-time location. Changed to use ListActivity instead of Fragments, as Fragments don't seem to be well-supported in current GDK. Still need to working on styles.
…quest to execute before regions task finishes, if a region already exists. Added abbreviaton for Downtown.
…ven location to the tasks (helps with spoofing location for testing).
…efactor existing logic in the Service into this Activity, so we no longer need the Service.
…, since the service isn't needed. Add progress messages. Loading arrival times is really slow, need to examine why.
…ly show bus icon after arrival times are obtained.
…ate when a non-production voice trigger is used.
…it times", since this will be the official transit info voice command.
…round to broken swipe-based scrolling in XE16.X.
…ssed in, including more padding on the edges of cards.  Make the text slightly smaller to fit in new layout dimensions, and truncate route direction so it doesn't run into the arrival time.
…w and arrow into its own centralized OrientationManager. TODO - point arrow to nearest stop location, update distance text.
barbeau and others added 10 commits Apr 28, 2014
…nstantiated from ArrivalsListActivity, since otherwise its awkward to start/stop updates for onResume and onPause.
…cation and update other listeners. Revert accidental changes to UIHelp. TODO - point arrow to nearby stop.
…ating heading differences with magnetic declination and bearing to stop. Force compass redraw when new location is calculated.
dependencies {
classpath ''
Copy link

@cagryInside cagryInside Feb 25, 2015

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member Author

@barbeau barbeau Feb 25, 2015

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@cagryInside Yes, this (and the Gradle wrapper) likely need to be updated before this will build in the most recent version of Android Studio.

Copy link
Member Author

@barbeau barbeau Feb 25, 2015

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll push an update for this shortly.

Copy link
Member Author

barbeau commented Feb 25, 2015

Thanks for the feedback @cagryInside, just pushed a few commits to fix those items.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
None yet

Successfully merging this pull request may close these issues.

None yet

2 participants