
With rapid growth in the Tech industry and all the latest updates along with AI advancements, mobile applications are rapidly changing and constantly evolving, where pushing updates through the Play/App Store can be a slow and cumbersome process. What if we are able to get the latest updates without getting involved in the downloading process?
Firebase's Remote Config feature offers a powerful solution, enabling developers to make real-time modifications to their app. It works like a remote control, allowing the seamless introduction of new features on the fly.
Let's first understand the idea of how Remote Config operates.
This process includes :
Initially the developers make required changes to the application as per the need and then set the condition. For instance, whether the new update is suitable for all the users or only for targeted users such as users having min version or targeted based on location.
Thereafter, firebase sends updated configurations to the application. After which the app fetches these values and applies the changes to those targeted audiences.
Similarly, personalised notifications can also be sent to user’s mobile phone from your app, based on user actions eg. they have abandoned their cart before making a purchase. In this blog we’ll be focusing on making dynamic changes using Remote Config.
It is recommended to have a Firebase project connected to your Mobile Application. If you want to integrate Firebase analytics to your app, refer to Firebase Analytics Integration.
In your mobile application code, here in Android Studio, add firebase dependencies in build.gradle file (Module:app).
Thereafter, navigate to the Firebase console to set up the Remote Config and follow the steps as demonstrated below.
Step 1 - Configure A/B test Using Remore Config
Select Remote Config option available under Run section and click on ‘Create Configuration’
Step 2 - Choose or Create Parameter value to utilise in A/B test
Step 3 - Configure Advanced Settings
Moreover, we can also set up additional settings by clicking on the ‘Add new+’ button.
Step 4 - Create Condition with Conditional Value
For now, let us move further with the Conditional value option.
Step 5 - Validate and Save all configurations the Publish Changes
Note: Configs will not reflect unless we confirm it by clicking on the ‘Publish changes’ button available on the top right of the dashboard.You will also have a pop up message that appears and asks for the permission to publish the changes.
Step 6 - Integrate Remote Config in your Mobile App
Here, we are making changes to our Android mobile app
This step includes Initialising the Remote Config variable and setting the default value.
Note : It is important to publish the new Remote Config APK to the app store so that all the new updates related with Remote Config can be distributed to the audience as per target predefined.
Original / Default Version
Above shows and returns the default value ‘true’ with no changes to their existing layout.
Lets see what is the update about the apps running in India and matching our condition as per added in remote config.
In the below displayed image button change it shows that user falls into our A/B test variant successfully and that’s where the banner header section is changed and it received the update about the ‘application_credit’ as per our condition.
A/B test Variant
This is the overview of the variants that will display how the conditional setup is working by displaying the graphs, users count and other relevant data.
Hence we came across the smooth and dynamic process of delivering the updates to mobile applications making it particularly useful where promotions , features or content need to be updated frequently. Also by following all the steps and necessary configurations, we can improve user engagement and responsiveness.
Firebase Remote Config is a powerful tool for dynamically managing and updating app features without requiring new app releases. By enabling real-time customization and personalization, it empowers developers to enhance user experience, experiment with new features, and respond quickly to user feedback.