Firebase for Android Devs - How You Can Benefit from It
Jun 16, 2017 | 6 min read
Every one of us wants the same for our apps. We want them to contain a richer feature set, appear more stable, and be used by more users, not to mention having quicker development cycles. This can cost a lot of your most important resources: time and money. Wouldn’t it be perfect if someone has already made the solution ready to be used as a service?
Fortunately, we are lucky. Firebase provides us with over a dozen different services that cover a lot of areas, including app testing, backend options, different app variants and more. It’s also integrated with Android Studio for the sake of simplicity. In this article, we will help you resolve some of the issues you might be experiencing with your app. Just scroll down to the relevant section and see how using Firebase can benefit your app.
Is your app too unstable?
Ever since the first bug appeared 70 years ago (by the way, it was a real insect then, hence the name), bugs became an inherent part of software. As hated as they are, they still appear today and will appear as long as software is made by humans, and then maybe even a little longer. So how can we work around that?
One function aiding discovering bugs is Firebase Test Lab. It is often not enough to test an app only on your device, even if you own a few of them. It’s also tedious to click and test everything by hand. Fortunately, Test Lab can help you in just that.
It allows you to run custom instrumentation tests on lots of different, physical devices. From there, you get detailed reports on crashes, as well as screenshots and videos. It also integrates cleanly with the existing continuous integration framework, and even if you don’t write custom tests, you can still benefit from it with their intelligent bot, Robo, that automatically navigates through your app.
Sometimes, this might still not be enough. As soon as your app gains traction, some bugs can appear on some users’ obscure configurations, and it would be a shame if you couldn’t catch them before things get out of hand.
Firebase Crash Reporting will help you with that. This tool will inform you about all the crashes your app has had on your users’ devices along with comprehensive data, including stack traces – also when the device was offline. Firebase Crash Reporting produces neat lists ordered by priority and impact, so you won’t need to waste your time on setting priorities. You will be able to jump right in and get your hands on fixing the issue immediately.
Do you want to know more about your users?
The Analytics moduleallows you to collect data about everything users do in your app. It presents you with one dashboard, which can contain even 500 event types with 25 attributes each. You can further filter your data by user age, location and gender, and export the data for custom querying. It’s also integrated with many services mentioned below.
Is your app not flexible enough?
Remote Config may look simple at first, but it is a powerful tool that allows your app to fetch key-value pairs from the cloud on each app run, making it easy to tweak your app’s settings, run A/B tests on your audience, and gradually roll out important changes.
Is your app’s growth too sluggish?
Your app is only useful when someone actually uses it. Luckily, user base is another area that Firebase can help you with.
App Indexing allows your app to appear in Google Search results, instead of a mobile website. Consuming content on a dedicated app is proven to generate more clicks compared to consuming it on a mobile website. Besides driving re-engagement, App Indexing also allows for quick app installation with a handy install button in search results.
You can further use the API to allow users to find their personal data, such us notes, in their phone’s search results.
Push Notifications can be a great strategy to remind your users that they have your app sitting on their device. Don’t overuse it though, because no one likes spam, and it’s important for notifications to have real value to users. What counts as real value is info about promotions, special events or new cool features.
Invites alleviate your users from the pain of sending invite links (or vouchers for in-app purchases) to their friends by hand and their friends from typing in or copying them after app install. The Invites module enables you to use the Dynamic Links infrastructure and lets users painlessly invite their friends via email or free text messages. The Invites contain a content-rich page that allows invitees to install the app, and after that, a voucher is redeemed automatically (if one has been sent). It’s pretty straightforward to then use and check conversion data in Analytics.
Dynamic Links (already mentioned above) allow you to achieve even more. Now, you can send your users to any content in your app, even if they need to install it in the meantime. The possibilities are endless, including an easy conversion of web users to app users and sharing users between app and the web.
Do you waste your time doing the same over and over again?
Authentication is only one example of a function that almost every app contains. Instead of building an authentication module by hand, you can use a pre-made solution in Firebase, which enables logging on with credentials or social media accounts.
As you can see, Firebase is a great solution for developers who don’t like to waste their time and money. That’s not everything Firebase has to offer – for more info about their other services, such as AdWords, AdMob and other services targeted at backend developers, visit Firebase’s website.