This page provides troubleshooting help and answers to frequently asked questions about distributing and testing apps with App Distribution.
Installing and testing apps
The following tips help testers troubleshoot issues that involve installing test apps and accessing them on a device.
Google account doesn't have access to test app
If your Google account does not have access to a test app you previously installed (or accepted an invitation for), it's likely that you signed in to the wrong Google account. The apps to which you have access are associated with the Google account you used when you first accepted the invitation to test the app. Try again by signing in with the Google account you previously used to accept the invitation.
"Untrusted Enterprise Developer" error when trying to run test app
The Untrusted Enterprise Developer error appears if you did not trust the developer certificate on the test device before opening the app. In the Settings app > Profiles & Device Management screen, select the app's developer name and trust it.
"Waiting for developer" prevents installing test app
If you're installing an Ad Hoc distribution, the Waiting for developer button appears when the developer hasn't yet configured their app to run on your test device. To make their app available to you, the developer must complete the following steps:
Add the test device's UDID in the Apple Developer portal (the UDID is emailed to the developer when you register the device to Firebase).
Include the device in the app's provisioning profile.
Build the app using the updated provisioning profile.
Enabling in-app alerts with the App Distribution SDK
The following tips help you and your tester troubleshoot issues that involve enabling in-app new build alerts using the App Distribution SDK.
Tester isn't receiving in-app alerts
If you have already set up the App Distribution SDK in your app and your testers aren't receiving in-app alerts, check to make sure your app is fetching new releases:
Enable debug mode in your app (visit the Google Analytics documentation to learn how), then run your app in a simulator and search for the string "[Firebase/AppDistribution]".
Check that you're getting app releases:
If a valid release object is returned, it's likely that there's an issue in the View Controller lifecycle where the alert dialogue is loaded before the View appears. Note that the App Distribution SDK does not display an alert dialogue by default; you must specify how and where the dialogue is displayed in your app (visit Basic alert configuration for an example).
If no release is returned, your tester may not yet be associated with the new release. In the App Distribution dashboard of the Firebase console, make sure your tester is included in your build distribution and is in the Accepted state.
If your tester still isn't receiving alerts, have them follow the tips below to make sure they've accepted the invitation to test your app and have set up their testing device properly:
On the test device, sign into the Firebase App Distribution web clip (remember to select the Google account you first used when you accepted the invitation to test the app).
Check to make sure the new app release is available in the web clip.
Tester prompted to log in again after closing app
By default, your testers only need to sign in to their Google account once to enable new build alerts and to install new builds. If your testers are being prompted to sign in again after closing and re-opening your app, follow these tips to make sure your App Distribution configuration is set up properly:
Check to make sure you've enabled the App Distribution Tester API (refer to instructions in the App Distribution SDK guide).
In the Google Cloud Console, under Key restrictions, make sure you're not using a restricted API key.
If you typically clear
UserDefaultson logout, you may be clearing your tester's state. App Distribution stores a flag that indicates whether your tester has already signed into the app (refer to our GitHub repository for more information).
Frequently asked questions
Are there limits for adding testers to my app?
Firebase App Distribution has the following tester limits:
Add a maximum of 500 testers to a Firebase project
Add a maximum of 200 testers to an App Distribution group
To add more testers, request a no-cost limit increase.
Do my tester invitations expire?
Testers have 30 days to accept an invitation to test the app before it expires. When an invitation is 5 days from expiring, an expiration notice appears in the Firebase console next to the tester on a release. An invitation can be renewed by resending it via the drop-down menu on the tester row.
How long are app releases available?
App releases are removed from App Distribution if one of the following conditions occurs:
- The app release is older than 150 days.
You exceed the 1,000 app release limit, and the app release is older than the 1,000 most recent app releases.
After the app reaches or exceeds the 150-day expiration limit or the 1,000 app release limit, the release is removed from the App Distribution dashboard and the App Distribution tester web app. If your tester has installed the release, the local version of the app continues to run.
To keep the app release available longer, use one of the following recommendations:
- Before the app release expires or exceeds the release limit, download the IPA and delete the release from the App Distribution dashboard. Then, re-upload the IPA as a new build to App Distribution.
- Download the release and upload it to Cloud Storage for long-term archiving.
App releases expire after 150 days
When you upload a release of your app to Firebase, the release is in the App Distribution dashboard for 150 days, starting from the upload date. After you upload the release, you can distribute it to testers, who install the release from the App Distribution tester web app on their testing device.
To alert you and your testers, an app release expiration notification appears on your release in the App Distribution console and the App Distribution tester web app when the release is 30 days from the expiration date.
App Distribution supports a maximum of 1,000 releases
If you have questions, contact Firebase Support.
What is the Firebase profile?
The Firebase profile is a configuration profile that allows App Distribution to:
Register the test device by collecting the device's unique device ID (UDID). If you're testing an Ad Hoc distribution, Firebase sends the app developer an email that includes the test device's UDID, along with instructions on how to include the device in the app's provisioning profile so that the build can be tested on your device.
Install a Firebase App Distribution web clip to your device's home screen. The web clip allows you to install and access all your test apps in one place. New builds you're invited to test are automatically added to the web clip.
For help on installing configuration profiles on your iOS device, refer to Apple's documentation.
How can I access test apps I installed on my device?
If you're a tester, you can access all of your test apps with the Firebase App Distribution web clip, which is automatically added to your test device's home screen when you install the Firebase profile. If you're testing an Ad Hoc distribution, you must first install the profile before you can test the app.
If you're testing an Enterprise distribution, you can manually install the profile:
If you haven't already, sign in to Google and accept the invitation.
Under Test apps, select the app you want to test.
In the top right of the app's page, tap mobile_screen_share.
Follow the instructions displayed to install the Firebase profile.
How do I delete my tester account?
To delete your App Distribution tester account and its associated data, follow these steps in order:
Visit https://appdistribution.firebase.google.com and sign in with your Google account.
In the top-right, click(Manage account)
Optional: In your Google account permissions, revoke access from Firebase App Distribution. Note that revoking access without first deleting your App Distribution account does not delete your tester account or data.