Getting your internal team to run the most recent pre-release build of your app is critical to receiving feedback on the latest features you’re getting ready to ship. However, testers receive a lot of emails on a daily basis and sometimes miss out on an email notification about a new build. This means your testers might be running old builds and sending you bug reports for an issue that’s already been fixed.
With the App Distribution iOS SDK, open sourced and available today, testers receive in-app alerts when a new build is available. Right from your test app, testers can install the update and quickly start running the latest build.
In-app alert of new release within test app
Like App Distribution, the iOS SDK was built with flexibility top-of-mind, giving you the option to customize the full user experience to make it feel like a natural extension of your app.
We’ve been working with a number of companies over the past few months, incorporating their feedback and understanding how they’re using the App Distribution iOS SDK. Twitter, who had previously used a similar feature with Fabric’s Crashlytics Beta, has integrated the SDK into their nightly builds to make sure testers can easily access the latest update. We sat down with Twitter iOS engineer, Mateusz Dzwonek, to learn more about their experience:
Why did the Twitter Release Team decide to use the Firebase App Distribution iOS SDK?
One of the main goals for our Twitter employee app is to catch bugs before they go to the public Twitter app. We always try to make it as easy as possible for people to install and update this app to the latest version, but it can get out of date pretty quickly with how often we ship new versions. In the past, we relied on sending emails to have our users update the app, which put the burden on the user to always keep up with it. But thanks to the Firebase App Distribution SDK, we were able to simplify the process by showing users if they are on the latest version and allowing them to update from the app instead of having to click on a link in an email.
How did the team use the Firebase App Distribution iOS SDK to improve your testing release process?
Before Firebase, we would check if the user was on the latest version and if not, we’d display a prompt that started an immediate update. We know that most of our users launch the app to complete a specific task, and forcing them to close the app to update it can be frustrating. So one of the most important features we were able to add to our app was a new and improved update mechanism which was possible with the Firebase App Distribution SDK. Now we’ve added an option to install the update when they close the app, and it has reduced the amount of time it takes for the latest version to reach the majority of users by nearly 20%.
Wrap Up
We hope Twitter’s success story highlights the importance of improving your tester’s experience by giving them the flexibility to install your latest pre-release versions right from your test app. We’re excited to hear about how other companies use the App Distribution iOS SDK as part of their internal testing workflow. To get started, check out our docs to set up in-app build alerts. Happy testing!
Keeping your app healthy can be a very time consuming process, even if you’re already using Crashlytics. The bigger your app grows, the more difficult it becomes to keep track of all the crashes your users experience, and which part of your ever growing codebase is causing them. By combining Crashlytics with Google Analytics, all of those previous hurdles become much more manageable, with a supplementary SDK that allows you to reproduce issues and keep track of data with much more granularity. Some of these features include a detailed insight into your crash-free user metrics, the ability to use breadcrumbs to track specific events a user went through before a crash occurred, and the ability to link your apps data to BigQuery to easily visualize your apps key metrics.
Out of the box, Google Analytics keeps count of the number of sessions, and crashes that occur in your Firebase app. This is done through events that the Google Analytics for Firebase SDK tracks automatically--aptly titled “automatically collected events”. By pulling the “session_start” and “app_exception” events, Google Analytics is able to understand when a user session has started and respectively when a crash has occurred. Having those metrics alongside your Crashlytics data gives you a top level view of crashes in your app, as well as the ability to analyze those individual user sessions that led to a crash. This also provides you a dashboard that allows you to quickly notice a dip or a spike in your Crash Free Users, and to check the crash issues right underneath, to figure out what caused it.
Sometimes, you not only need to know where in your code a crash occurred, but exactly what a user was doing in your app before it crashed. As we mentioned earlier, Google Analytics automatically collects several different events in your app, but you also have the ability to log custom events, and custom event parameters. Crashlytics will then add these custom events to individual crash sessions, allowing you to track user sessions with much more granularity. Using these custom event markers alongside Analytics breadcrumbs, you’ll be able to create a trail leading directly to the users crash.
One example you get out of the box is screen view events. This means if you have both Crashlytics and Analytics, you’ll be able to see exactly what screens your user traveled through before they experienced a crash. You can read more about breadcrumbs and Crashlytics here.
Monitoring the stability of your app within your user base is critical for understanding what your areas of focus need to be. This process has been made much simpler with the Latest Release feature. This display will highlight your data once you have both the Google Analytics SDK and Crashlytics SDK integrated, and you will be able to detect crashes in your app’s most recent version, as well as its most popular versions. This view is extremely useful for identifying a prevalent bug that might appear in your app’s latest version that might not present in other versions. Using this tool will allow you to isolate the issue, and solve it much more quickly.
Creating queryable reports on the insights you’ve gathered can be instrumental for your app’s success, among developers and stakeholders alike. Both Crashlytics and Google Analytics offer the ability to export your data into BigQuery and visualize it with Data Studio. You can create complex dashboards that use data from both Analytics and Crashlytics, providing crucial metrics for your business.
By implementing user identifiers or key value pairs into your crash reports, and exporting them alongside your Google Analytics custom events, you can start tying your Crashlytics and Google Analytics data together in order to better understand how stability is affecting your users and your revenue. For example, if you’re a game developer and your users are only getting to the first level of your game before they reach a fatal error, this could be causing a lot of churn. You could figure that out by querying for most pervasive crashes in your app by user ID, and then filtering by your first level custom event.
Picking up on trends such as which crashes are causing your users the most grief in a given week, or figuring out which demographic of users those problematic crashes are affecting, are just a couple of the useful features that exporting your Crashlytic and Google Analytics data to BigQuery will provide you. Here are a handful of useful queries you can try out for yourself!
No party is complete without pizza, and no Firebase Crashlytics integration is complete without Google Analytics. So, whether you’re looking to keep track of your app’s latest version, break down your user data in BigQuery, or just need a robust app development platform, head over to the Firebase console and integrate your app with Crashlytics and Google Analytics!
It’s been a year since we all came together in Madrid, Spain for Firebase Summit 2019, shared announcements and updates, and listened to your product feedback. Since then the world as we know it has changed, but here at Firebase our mission to help developers succeed by making it easy to build and operate mobile and web apps remains the same.
We’ve been working hard to build tools to help you accelerate app development, gain actionable insights and scale with ease. We’re looking forward to sharing these updates with you at this year’s virtual Firebase Summit, happening 27-28 October at 9:30AM PST each day. All you have to do is prop up your mobile device or laptop, head over to firebase.google.com/summit, and tune in from wherever you’d like.
While we will miss connecting with you in person, we are excited that even more developers can join us this year.
Here’s what to expect during the two days:
Join us 27 October at 9:30 am PST for the opening keynote to learn how Firebase can help you build and operate your apps. After the keynote, you can ask questions in the chat and have them answered live by the Firebase team during #AskFirebase.
Stay tuned for 11 technical sessions on topics like monitoring your latest release, increasing user engagement, optimizing your app revenue, and more. These sessions will be live streamed over the two days so you can watch and chat with other developers and the Firebase team, or you can watch them on-demand at your convenience.
For a more hands-on learning experience, watch us live code an app from scratch using Flutter and Firebase. You can also try one of our new demos, codelabs with walkthrough videos and multi-step tracks to learn about popular topics such as how to build a web app using Firebase.
We will be releasing more details about Firebase Summit in the coming weeks. In the meantime, sign up for updates on our event page, subscribe to the Firebase YouTube channel, and follow us on Twitter to join the conversation.
One of the biggest challenges game developers face is figuring out how to improve monetization without compromising their game experience. Many game developers embed ads into their titles, which enables them to offer their games for free and remove the cost barrier of adoption for players - while still generating revenue. In-app advertising can be lucrative, when done effectively and in moderation.
But how do you know what types of ads are best-suited for your game? How do you ensure ads won’t drive away players? These are the exact questions Pomelo Games had. For answers, they turned to Firebase.
Pomelo Games is one of the top game studios in Uruguay. They pride themselves on developing unique and polished games that capture players’ imaginations. Their recent release, Once Upon a Tower, “is an easy-to-pick-up, hard-to-put-down, free-to-play game,” says co-founder Jonás Mora. A Play Store Editors’ Choice, the game is beloved for its high-fidelity graphics, as well as the “fairness of its free-to-play mechanics,” says Jonás.
So when the team needed to improve the game’s monetization, they were unsure how to proceed. They were looking for a way to increase revenue without sacrificing the affordability and game quality their players loved.
Pomelo Games used Firebase Remote Config and Firebase A/B Testing to test a new ad format: interstitials. They also used Google Analytics to monitor revenue and Firebase Crashlytics to keep an eye on stability.
Although initially opposed to the idea, Jonás and his team discovered that showing interstitial ads to their entire player base led to an average 25% increase in AdMob revenue, and surprisingly, a 35% increase in in-app purchases as well. In both cases, there was almost no negative impact on retention or game stability. Firebase gave Pomelo Games the confidence to try new approaches to grow revenue without driving players away. Read Pomelo Games’ full story and get details on their success with Firebase in our new case study. And learn more about how Firebase can help you build and grow your game, and see what other game studios are using Firebase.