Home / Companies / Firebase / Blog / December 2017

December 2017 Summaries

10 posts from Firebase

Filter
Month: Year:
Post Summaries Back to Blog
Firebase’s 2017 recap highlights major product releases and organizational developments aimed at expanding its serverless, analytics, testing, gaming, database, messaging, and machine-learning capabilities. Key launches included the beta of Cloud Functions, Cloud Firestore, Performance Monitoring, A/B Testing, and Predictions, alongside Phone Authentication, Crashlytics integration, Go Admin SDK support, open-sourcing efforts, enhanced Analytics reporting, and platform-specific Firebase Cloud Messaging controls. The company also brought its C++ and Unity SDKs to general availability, added Android game testing support, and joined forces with the Fabric team. Beyond product work, Firebase staff attended more than 136 developer events across over 120 countries, including its Developer Summit in Amsterdam, while celebrating internal hack projects, community events, team growth, personal milestones, charitable activities, and workplace traditions. The post closes by thanking developers and wishing the community a restful holiday period before further work begins in 2018.
Dec 28, 2017 1,571 words in the original blog post.
FirebaseQueryLiveData can reduce unnecessary Firebase Realtime Database traffic during Android Activity configuration changes by delaying listener removal when LiveData becomes inactive. Normally, LiveData removes the database listener in onInactive() and adds it again in onActive(), so rotating a device can trigger a second server query even though the ViewModel and LiveData already retain the latest data snapshot. The proposed optimization uses a Handler to schedule listener removal after a two-second delay; if a replacement Activity becomes active within that period, the pending removal is cancelled and the existing listener remains attached. This approach can lower network use, improve performance, conserve users’ data, and reduce Firebase quota or billing costs while preserving lifecycle-aware behavior.
Dec 22, 2017 931 words in the original blog post.
Firebase Realtime Database has integrated with Google Stackdriver, enabling users to monitor database activity through expanded metrics, custom dashboards, graphs, and usage-threshold alerts. While the Firebase Console already exposes metrics such as Load, Storage, Downloads, and Connections, Stackdriver provides more detailed visibility, including breakdowns by operation type to compare the capacity consumed by REST requests and realtime operations. Additional metrics cover SSL-handshake requests, raw outbound bandwidth excluding encryption overhead, and other database performance indicators. Developers can begin by creating a Stackdriver account for their Firebase projects in Google Cloud Monitoring, then build charts through the Dashboards interface, with further metric documentation and future examples for alerts and advanced dashboards planned.
Dec 21, 2017 299 words in the original blog post.
Using Android’s LiveData and ViewModel with Firebase Realtime Database, the post shows how to remove database-specific DataSnapshot handling from an Activity by mapping snapshots into a JavaBean-style HotStock model containing ticker and price fields. A ViewModel uses LiveData’s Transformations.map method to deserialize each snapshot and expose LiveData<HotStock>, leaving the Activity responsible only for rendering already prepared UI data and making it easier to test or later replace Realtime Database with another backend. It also notes that LiveData transformations run on the main thread, so costly deserialization, reflection, or I/O can cause dropped frames or application freezes; for more expensive work, MediatorLiveData can observe the source, run conversion off the main thread, and use postValue to safely publish results. The post cautions that creating a new thread for every update is not a production best practice and suggests an Executor-backed thread pool instead, while identifying a remaining optimization: avoiding unnecessary Firebase listener removal and reattachment during configuration changes, which can trigger redundant data downloads.
Dec 20, 2017 1,414 words in the original blog post.
MightySignal’s 2017 report on the fastest-growing Android SDKs found that eight of the top 20 were Firebase products, highlighting increased adoption of Google’s mobile development platform. Firebase Realtime Database ranked third, while the newer beta Cloud Firestore was introduced as a scalable realtime NoSQL alternative designed to improve data structuring, querying, and scaling. The report also noted growth in Firebase Remote Config, Authentication, and Crash Reporting, alongside updates including behavior-based personalization through Firebase Predictions, expanded A/B testing capabilities, phone-number authentication, and the beta launch of Firebase Crashlytics as Firebase’s primary crash-reporting tool.
Dec 19, 2017 541 words in the original blog post.
Google’s Android Architecture Components, particularly LiveData and ViewModel, can simplify the use of Firebase Realtime Database by separating UI, data, and lifecycle responsibilities. A conventional Activity directly adds database listeners in onStart() and removes them in onStop(), but this approach creates repetitive code, makes testing harder, and risks leaks if listeners are not removed correctly. By extending LiveData into a reusable FirebaseQueryLiveData class, database listeners are automatically attached when an Activity or Fragment is active and detached when no active observers remain. A ViewModel retains this LiveData across configuration changes, while the Activity only observes data snapshots and updates its UI, resulting in shorter, clearer, and more testable code. This pattern also immediately restores the latest available data after orientation changes without relying on saved instance state, though the author notes that further improvements could remove Firebase-specific snapshot handling from the Activity and reduce listener reattachment network requests.
Dec 15, 2017 1,882 words in the original blog post.
Firebase announced the iOS App Store release of MechaHamster, a demo game previously available for Android, to demonstrate how its Unity SDK can help developers build games without maintaining backend infrastructure. The game integrates Firebase Analytics for player behavior tracking, Authentication for cross-platform sign-in, Remote Config for live gameplay adjustments, Realtime Database for game data and profiles, Cloud Messaging for player notifications, and Dynamic Links and App Invites for content sharing. Its Unity project is available on GitHub, while Firebase directs developers to its games resources for additional information.
Dec 13, 2017 237 words in the original blog post.
Firebase Test Lab introduced Robo scripts, which let developers record and upload a JSON sequence of in-app actions to guide Robo tests through screens such as onboarding or login flows before automated exploration begins. The service also now clusters screenshots from a test matrix by comparable screens, making it easier to assess rendering differences across device sizes, densities, and orientations. Its device catalog has added the Sony Xperia XZ Premium, Moto G4 Play, and Huawei P8lite, while unreliable older devices are marked deprecated for one month before removal. The team recommends Espresso tests for more comprehensive app-driven coverage and invites users to connect through the Firebase Slack #test-lab channel.
Dec 12, 2017 571 words in the original blog post.
Firebase CLI version 3.16.0 introduced first-class TypeScript support for Cloud Functions, allowing developers to select TypeScript during project initialization and receive a preconfigured project structure, compiler settings, and automatic transpilation to JavaScript during deployment. TypeScript’s optional static typing and modern JavaScript features can improve code completion, linting, syntax checking, and early bug detection. New TypeScript Cloud Functions projects also recommend TSLint with selected safe default rules, including checks for common issues such as failing to return a promise; warnings appear during deployment, while errors can prevent deployment, though rules may be disabled locally or globally when necessary. The release also adds Firebase CLI lifecycle hooks, including predeploy and postdeploy commands that can automate tasks across Firebase services, such as compiling code or documentation, checking repository status, tagging production releases, and sending deployment notifications.
Dec 08, 2017 621 words in the original blog post.
Firebase CLI provides a flexible alternative to manually editing Firebase Realtime Database data in the console, enabling developers to script database operations for setup, testing, and Cloud Functions trigger validation. After configuring a project and logging in, users can write JSON data with `database:set` from files, inline command-line data, or standard input, with confirmation safeguards for potentially destructive writes. The CLI also supports retrieving data with `database:get`, saving or pretty-printing JSON output, and applying query ordering and limits, while `database:push` creates uniquely keyed records, `database:update` changes selected fields without replacing an entire node, and `database:remove` deletes data and requires particular caution. Database contents can be copied between Firebase projects by piping a read command into a write command and selecting projects with the `--project` option, and recurring tasks can be streamlined through Bash functions such as a reusable project-to-project transfer command.
Dec 05, 2017 1,092 words in the original blog post.