Tips for building a quality app with Firebase

Tram Ho

Overview

Over the past few years, user expectations of the app have been rising. If an app crashes, hangs or drains the battery, and maybe one of your competitors is offering the same features but having a much better experience. To meet these expectations and stay ahead of the competition, developers are investing more in the usability and technical capabilities of their applications.

In this article, I’ll go over some of the things you can do to make sure your apps are performing at their best.

What is app quality?

Before we look at the tips, let’s see what makes the app quality. App quality is the overall view of the customer experience: from interacting with app functionality – can people quickly and easily do the work they have to do? – or through technical issues – is the application crashing or freezes, has performance problems, is the loading slow? All of these contribute to the quality of the application.

Let’s learn some little tips offline!

Tips

Tip 1: Test and test again

Testing is one of the most important steps we take to ensure our application is stable. Starting with the basics, test your code with Unit tests, integration, and UI tests. Use your team and others in your organization for internal testing before you deploy. Consider involving your community in closed or open tests.

There are tools to aid code testing in Android Studio and Google Play Console, such as internal, closed, and open testing . Firebase also includes tools to enable testing, such as Firebase Test Lab

Tip 2: Use feature flags

Firebase remote config can let you integrate integrate feature flags into our workflow, helping to improve application quality:

  1. When you introduce a new release and discover a feature that isn’t working as expected, you use the feature flag to turn it off, avoiding the need to roll back the entire release ( release).
  2. When you use feature flags to deploy multiple versions of updates by enabling or disabling the device-based features. This helps to perform deployment testing to determine which feature sets work best on different devices and to decide which features are distributed to all users.

Tip 3: Setup release readiness metrics

It can often be a challenge to figure out when a build is ready for release. Using different Firebase tools, such as App Distribution , Crashlytics , and Performance Monitoring , we can easily share pre-release versions of our app (pre-release) with the team for internal testing. internal testing. We also receive in-depth crash and crash reports that help us launch our application with confidence. For example, I have moved from 99.35% crash-free sessions to> 99.7% using Crashlytics to identify, fix, and track releases.

Tip 4: Automate your release

Don’t rely on manually executed release steps, but put everything into scripts as soon as possible. In some of the projects I’ve worked on, automation includes checking continuous integration (CI) to make sure the translated strings are in the correct format. We also run a script release to generate tags on GitHub, fire up the CI build release, and upload the build to the play store. The switch to automated scripts makes the team’s time to market (market) decrease significantly.

Tip 5: Set your rollout thresholds in advance

After the rollout begins, we don’t want to quickly find out if a specific metric means we should pause or give up on release. We have set the baseline for the maximum acceptable crash rate . If the breakdown rate exceeds this maximum This feature means we can get the notification right from the start of the deployment, rather than a few hours later. We use Firebase Crashlytics speed alerts for faster notifications for releases that only roll out when enough users are on the release.

Therefore, it is important to set benchmarks for key metrics. You can then proactively fix any application stability issues whenever your critical metrics are near the threshold.

Tip 6: Use stage rollouts

When introducing updates, use the staged rollouts in the Play Console . With a staged rollout, your update will be distributed to a small group of your users. If the feature works well with your user subset, you can increase the number of users receiving Updates. Additionally, if the feature is not working as expected, you can either pause deployment to fix the problem or abandon publishing altogether. This approach helps to minimize the number of users affected by unexpected issues.

Tip 7: Set up alert notifications

Use alert notifications to notify problems as soon as they happen. For example, Firebase Crashlytics can notify your team when an issue is causing an emergency issue in your app. You can also use the notifications option in the Play Console to set up email alerts when your app is rated one star.

For example, you can export the data to BigQuery and import it into an internal tool to set up the alerts needed to find out how a release is going. For example, during implementation, since we can group bugs, we can look at the data in BigQuery to see what’s going on and how many users are affected.

Tip 8: Use custom logs and keys in Crashlytics

One of the common rollout challenges is the “it works on my machine” phenomenon. Your application can be installed on hundreds of different types of devices, with different configurations per device type. As a result, developers may spend a long time unsuccessfully trying to reproduce crashes because they cannot figure out the cause of the problem. Crashlytics helps to capture device configuration, user actions, and application state. When a problem arises, using custom logs and keys in Crashlytics makes it easy to reproduce a crash and know which events led to it.

Tip 9: Review and monitor user feedback.

Monitor user ratings and reviews is a great way to stay on top of things. Deliveroo (a development team) monitors how orders are delivered and their customers are satisfied. While this is out of the app development process, it does provide feedback to the development team. Another approach is to use an analytics tool to check how many users are using key features. If use of a feature suddenly drops, a problem may have occurred. See the Android Developer guide on how to Browse and respond to app reviews for positive user interaction for more advice on how to interact with users through reviews.

Conclusion

Users’ expectations have increased and many companies are investing more in the usability and technical capabilities of an application to help retain users. And in short, Firebase and Google Play’s app quality tools help make your apps really the best and ensure everyone can get the most out of your services.

You can learn more about integrating Firebase and Google Play app quality tools into your release from the How to increase app quality with Firebase and Google Play blog post.

Thanks for reading!

Reference source: https://medium.com/googleplaydev/tips-for-building-a-quality-app-with-firebase-dd21cbbb7b99

Share the news now

Source : Viblo