Every year for the past few years, Google releases an app for I/O attendees. Then, a few months afterwards, the company uploads the app's source code to GitHub. This year's I/O app was aptly named "Google I/O 2017," and now, if you're an Android developer, you can go through its source code to see what new techniques you can implement into your own app(s).

The biggest addition to the I/O 2017 app was the event reservation system, which enabled attendees to make reservations and join waitlists for various events without having to stand in long lines. This data was synced to attendees' conference badges, which enabled staff to verify reservations on their phones with NFC. This was achieved with the Firebase Realtime Database (RTDB) and Cloud Functions for Firebase. A listener in the code allowed database updates to be received, and a Cloud function processed requests in the background, simultaneously communicating with the badge system while preventing attendees from reserving too many seats.

Additionally, there was a feed in this year's app that enabled attendees, both physical and remote, to get hourly updates on the event. RTDB was also used for this, as was a more lightweight MVP implementation that was motivated by Android Architecture Blueprints. This not only allowed for the system to be more modular, but also showcased a different MVP pattern for developers.

Even though the source code's been released, Google is still working on updating the app's code and simplifying its design. You can read about all the additions in much more detail at the source link below.

Source: Android Developers Blog