Google has again provided details about how Googlers have optimized the open-source code behind its newest Santa Tracker application in an effort to help Android and web developers improve their own experiences. The fact that the web and Android applications see a yearly release, in addition to their size and number of users, makes them a perfect test-bed and a great way for Google to show off its newest optimization innovations. The current (2016) version of Santa Tacker make us of APIs and frameworks like Firebase and Polymer, allowing the web version to work better in environments with poor connectivity or even offline. The Android version has been substantially reduced in size despite new features.
Google starts by outlining how it made its web version of Santa Tracker smaller and still more responsive, as well as adding support for "Add to Home Screen" and offline mode. To begin with, the Progressive Web App doesn't save the entire site offline – which the company says would require around 100 MB. Instead, it only saves the scenes a user has visited at least once. Developers also used Polymer 1.7+ to pack the code into reusable components. That means that although each element is a custom element, those elements only load when they are needed by the web app. Google says that minimizes the "startup cost" imposed by Santa Tracker. Googlers also incorporated Web Share API, so that sharing is conducted by the native intent of whatever platform the user is on. For the Android side of things, Google has managed to downsize the APK by over 10 MB – allowing the application to work better for devices with lower memory. Google attributes the current downsizing to the removal of problematic code blocks in the user interface. Googlers also built Santa Tracker using split APKs, meaning that each architecture has its own APK and doesn't include all of the data needed for the other architectures. The APKs support phones and tablets, of course, but also include support for Android TVs and even custom watch faces for Android Wear devices.
In addition to those optimizations, the application also makes use of the Firebase features so that app invitations can be sent to allow users to play with friends and Googlers will be making use of Firebase Analytics to further improve the app in the future. New educational experiences have been added to the web version, including one called "Code a Snowflake." Code a Snowflake is effectively an introduction to coding logic and allows users to place graphical blocks and instructions that will build a snowflake. Meanwhile, and despite size reductions, four new games have been added to the Android version of the app. One of those is even an augmented reality game called Present Quest that has users interacting with their real-world surroundings to "collect presents and level up." Both new versions also support Chromecast this year. Developers interested in checking out the latest newest build instructions and code, they are now available through GitHub.