Google has a convention to publish the app source code for the current year in the months following the end of the annual I/O conference. Today, Google announced the release of the source code for the Google I/O 2018 Android App and has hosted it on GitHub.
Although the app’s functionality is relatively simple, the primary purpose is to act as an activity’s scheduler, but it’s usually a good indicator of what the visual aesthetic trends Google will follow in a particular year. Similarly, for developers, the source code for the App will reveal the “official recommendations” coding practices, through which you will learn how to utilize the latest APIs and platforms best.
Unlike the traditional ContentProvider + SyncAdapter architecture followed by the I/O 2017 App, the 2018 App is almost completely rewritten, following the new Android architecture component system and synchronizing the code with the Android team’s current proposal to build modern apps.
Also, the overall approach followed in designing the App has undergone considerable changes and has become more modular. The development team said that this is in line with the recommendations in the “App Architecture Guide .” So they decided to write modular, testable, and maintainable code when determining the architecture of the app. They keep the Activities and Fragments logically independent and move them to ViewModels. They use LiveData to observe the data and use the data binding library to bind the UI components in the layout to the App’s data source.
The overall architecture of the app is shown below:
Kotlin is the Android development language that Google promoted this year. The app is written with Kotlin. If you’re learning or using Kotlin recently, take a look at how Google officially uses Kotlin to develop apps.
For more information, please see the Google blog.