此页面提供疑难解答帮助以及有关使用 App Distribution 分发和测试应用程序的常见问题解答。
分发应用程序
使用以下提示解决您在向测试人员分发应用程序时可能遇到的问题。
上传应用程序时,您可能会遇到此错误:
“我们找不到应用<app-id>
的联系电子邮件。请访问 Firebase 控制台中的 App Distribution 进行设置。”
如果可用,请在 Firebase 控制台中设置联系人电子邮件。如果问题仍然存在,请联系Firebase 支持。
如果您在配置过程中反复遇到错误 400、409 或 500,请联系Firebase 支持。向支持人员提供您的 Firebase 项目编号和应用程序标识符。
以下是浏览器网络响应的示例:
{
"status": "IN_PROGRESS",
"message": "There was an error processing your
distribution. Ensure you are uploading a valid IPA or APK and try again."
}
要解决此问题,请按照下列步骤操作:
验证 IPA 的大小。所有二进制文件的最大文件大小限制为 2048 MiB,略高于 2 GB。
如果 IPA 大小在文件大小限制内并且可重现,请执行以下步骤:
检查您的
Info.plist
文件并确认CFBundleDisplayName
是否包含任何<array>
分隔符。删除
<array>
分隔符并重建您的应用程序。上传应该会成功。如果您仍然遇到问题,请联系Firebase 支持。
如果 IPA 大小超过文件大小限制,请进行任何必要的更改以减小文件大小。
如果减小 IPA 文件大小不能解决问题,请联系Firebase 支持并询问有关使用Testflight的问题。
安装和测试应用程序
使用以下提示解决测试人员在安装和测试您的应用程序时可能遇到的问题。
当用户创建 Google 帐户时,他们会自动收到一个 Gmail 地址。
如果测试人员没有 Google Workspace 或 Gmail 地址,或者他们更愿意使用其他电子邮件地址登录,请要求测试人员将非 Gmail 电子邮件地址链接到该帐户并使用该电子邮件地址登录。
选择备用电子邮件时,测试人员必须遵循以下准则:
- 不要使用 Gmail 地址。
- 不要使用已经关联到其他 Google 帐户的电子邮件地址。
- 使用此电子邮件地址登录时,请记住使用您的 Google 帐户密码。
有关详细信息,请参阅使用其他电子邮件地址登录您的 Google 帐户。
如果测试人员使用与发送邀请的电子邮件地址不同的电子邮件地址接受了电子邮件邀请,则测试人员可能无法看到正确的应用程序或构建。
开发人员发送邀请并添加到新构建的电子邮件(电子邮件 A)可以不同于测试人员用来接受邀请的电子邮件(电子邮件 B)。这会在幕后创建一个链接。每当将电子邮件 A 添加到新构建中时,实际上是电子邮件 B 获得了访问权限。
如果测试人员接受了具有不同电子邮件地址的电子邮件邀请,请按照以下步骤解决问题:
从 Firebase 控制台的 App Distribution 页面的Testers & Groups选项卡中删除测试人员。现有邀请将被删除。
重新邀请测试人员测试您的应用。测试人员应该会收到一封邀请电子邮件。
确保测试人员接受具有相同电子邮件地址的邀请。
如果发生以下情况之一,测试人员可能收不到电子邮件通知:
电子邮件通知被发送到垃圾邮件文件夹。
电子邮件过滤器已设置。
邀请被发送到一个电子邮件帐户,但测试人员接受了另一个电子邮件帐户。测试人员收到最初发送邀请的电子邮件帐户的新发布电子邮件。
测试人员之前收到过邀请,但没有接受初始邀请。如果测试人员被添加到后续版本,App Distribution 不会自动向该测试人员发送发布通知,因为测试人员未接受初始邀请。
解决方案 1
让测试人员检查他们的垃圾邮件文件夹和他们在电子邮件服务中设置的任何电子邮件过滤器。
如果测试人员取消订阅电子邮件,请要求测试人员执行以下操作:
- 查找测试人员之前从应用程序收到的电子邮件。
- 单击底部的管理电子邮件设置,然后单击允许电子邮件重新订阅。
方案二
从 Firebase 控制台的 App Distribution 页面的Testers & Groups选项卡中删除测试人员。此操作删除现有邀请。
重新邀请测试人员测试您的应用。测试人员应该会收到一封邀请电子邮件。确保测试人员接受邀请时使用的电子邮件地址与收到邀请的电子邮件地址相同。
如果您在打开应用程序之前不信任测试设备上的开发人员证书,则会出现不受信任的企业开发人员错误。在设置应用 >配置文件和设备管理屏幕中,选择应用的开发者名称并信任它。
当您尝试在 iOS 16 或更高版本上启动临时配置的 iOS 应用程序而不先启用开发人员模式时,会出现“需要开发人员模式”错误。
要启用开发人员模式并解决此错误,请执行以下步骤:
- 在您的 iPhone 上,打开“设置”应用,然后点击“隐私与安全” 。
- 向下滚动到 Security 并点击Developer Mode 。
- 点击开发者模式滑块。
- 点击重启。
- 设备重启后,解锁设备。打开开发者模式?对话框出现。
- 点击打开。您现在可以启动您的应用程序并开始测试。
如果您正在安装 Ad Hoc 发行版,当开发人员尚未配置他们的应用程序以在您的测试设备上运行时,会出现此消息。要向您提供该应用程序,开发人员必须完成注册其他设备中的说明。
如果您的 Google 帐户无权访问您之前安装(或接受邀请)的测试应用程序,则很可能是您登录了错误的 Google 帐户。您有权访问的应用程序与您首次接受测试该应用程序的邀请时使用的 Google 帐户相关联。使用您之前用于接受邀请的 Google 帐户登录,重试。
当您遇到 403 错误时,这意味着您使用的帐户没有安装和测试应用程序的权限。访问权限由您在 Google Workspace 中的帐号所在域的管理员决定。
如果您认为自己应该有权安装和测试应用,请让您的 Google Workspace 帐号管理员更改您的帐号设置。您的管理员应按照管理对不受单独控制的服务的访问中的说明进行操作。
如果您有多个帐户,请尝试使用不受安装和测试应用程序限制的其他帐户登录。
使用 App Distribution iOS SDK 启用应用内提醒
使用以下提示解决涉及使用 App Distribution iOS SDK 启用应用内新构建警报的问题。
如果您已经在您的应用中设置 App Distribution iOS SDK,并且您的测试人员未收到应用内提醒,请检查以确保您的应用正在获取新版本:
在您的应用中启用调试模式。要了解如何操作,请参阅Google Analytics 文档。
在模拟器中运行您的应用并搜索字符串“[Firebase/AppDistribution]”。
检查测试人员是否有权访问新版本:
如果返回有效的发布对象,则可能是视图控制器生命周期中存在问题,即在视图出现之前加载警报对话框。
如果没有返回版本,则您的测试人员可能尚未与新版本相关联。在 Firebase 控制台的 App Distribution 仪表板中,确保您的测试人员包含在您的构建分发中并且处于已接受状态。
如果您的测试人员仍未收到更新,请让他们按照以下提示进行操作,以确保他们接受了测试您应用的邀请并正确设置了他们的测试设备:
在测试设备上,登录 Firebase App Distribution 网络剪辑。请记住选择您接受测试应用程序邀请时首次使用的 Google 帐户。
确保新的应用程序版本在网络剪辑中可用。
默认情况下,您的测试人员只需登录他们的 Google 帐户一次即可启用新构建警报并安装新构建。如果您的测试人员在关闭并重新打开您的应用程序后被提示再次登录,请按照以下提示操作以确保您的 App Distribution 配置设置正确:
检查以确保您已启用 Firebase App Testers API。有关详细信息,请参阅启用 App Distribution Tester API 。
在Key restrictions下,确保 Firebase App Testers API 包含在允许的 API 列表中。
如果您通常在注销时清除 UserDefaults,您可能正在清除测试人员的状态。 App Distribution 存储一个标志,指示您的测试人员是否已经登录到该应用程序。有关更多信息,请参阅GitHub 存储库。
经常问的问题
Firebase App Distribution 具有以下测试人员限制:
最多可向一个 Firebase 项目添加 500 名测试人员
最多可向 App Distribution 组添加 200 名测试人员
要添加更多测试人员,请请求免费增加限制。
测试人员有 30 天的时间接受邀请,在邀请到期前测试该应用。当邀请还有 5 天到期时,Firebase 控制台中发布的测试人员旁边会显示到期通知。可以通过测试人员行上的下拉菜单重新发送邀请来更新邀请。
请参阅注册其他设备。
如果出现以下情况之一,应用程序版本将从应用程序分发中删除:
- 应用程序版本早于 150 天。
- 您超过了 1,000 个应用程序版本限制,并且该应用程序版本早于最近的 1,000 个应用程序版本。
有关详细信息,请参阅App Distribution 最多支持 1,000 个版本。
在应用程序达到或超过 150 天到期限制或 1,000 个应用程序发布限制后,该版本将从应用程序分发仪表板和应用程序分发测试器 Web 应用程序中删除。如果您的测试人员已安装该版本,则该应用程序的本地版本将继续运行。
要使应用版本的可用时间更长,请使用以下建议之一:
- 在应用发布到期或超过发布限制之前,下载 IPA 并从 App Distribution 仪表板中删除发布。然后,将 IPA 作为新版本重新上传到 App Distribution。
- 下载版本并将其上传到Cloud Storage以进行长期存档。
应用程序版本在 150 天后过期
当您将应用程序的版本上传到 Firebase 时,该版本会在App Distribution 仪表板中显示 150 天,从上传日期算起。上传版本后,您可以将其分发给测试人员,测试人员从他们的测试设备上的 App Distribution 测试人员 Web 应用安装版本。
当版本距离到期日期还有 30 天时,应用程序版本到期通知会出现在 Firebase 控制台的应用程序分发页面和应用程序分发测试器 Web 应用程序中的版本上。
App Distribution 最多支持 1,000 个版本
App Distribution 允许每个应用最多发布 1,000 个版本。当您的应用程序达到 1,000 个应用程序版本限制时,App Distribution 会自动删除超出限制的最旧版本。
如果您想手动管理应用版本,请使用 App Distribution REST API 批量列出和删除应用版本。
如有疑问,请联系Firebase 支持。
Firebase 配置文件是一个配置文件,它允许 App Distribution 执行以下操作:
通过收集设备的唯一设备 ID (UDID) 来注册测试设备。如果您正在测试 Ad Hoc 分发,Firebase 会向应用程序开发人员发送一封电子邮件,其中包含测试设备的 UDID,以及有关如何将设备包含在应用程序配置文件中的说明,以便可以在您的设备上测试构建。
将 Firebase App Distribution 网络剪辑安装到您设备的主屏幕。 Web Clip 允许您在一个地方安装和访问所有测试应用程序。您受邀测试的新版本会自动添加到网络剪辑中。
有关在 iOS 设备上安装配置描述文件的帮助,请参阅Apple 文档。
如果您是测试人员,则可以使用Firebase App Distribution web clip访问您的所有测试应用程序,它会在您安装 Firebase 配置文件时自动添加到测试设备的主屏幕。如果您正在测试 Ad Hoc 发行版,则必须先安装配置文件,然后才能测试该应用程序。
如果您正在测试企业发行版,则可以手动安装配置文件:
如果您还没有,请登录 Google 并接受邀请。
在Test apps下,选择要测试的应用程序。
在应用程序页面的右上角,点按mobile_screen_share 。
按照显示的说明安装 Firebase 配置文件。
要删除您的 App Distribution 测试员帐户及其关联数据,请按顺序执行以下步骤:
访问https://appdistribution.firebase.google.com并使用您的 Google 帐户登录。
在右上角,单击
(管理帐户)删除帐户。
可选:在您的Google 帐户权限中,撤销 Firebase App Distribution 的访问权限。请注意,在未先删除您的 App Distribution 帐户的情况下撤销访问权限不会删除您的测试员帐户或数据。
此页面提供疑难解答帮助以及有关使用 App Distribution 分发和测试应用程序的常见问题解答。
分发应用程序
使用以下提示解决您在向测试人员分发应用程序时可能遇到的问题。
上传应用程序时,您可能会遇到此错误:
“我们找不到应用<app-id>
的联系电子邮件。请访问 Firebase 控制台中的 App Distribution 进行设置。”
如果可用,请在 Firebase 控制台中设置联系人电子邮件。如果问题仍然存在,请联系Firebase 支持。
如果您在配置过程中反复遇到错误 400、409 或 500,请联系Firebase 支持。向支持人员提供您的 Firebase 项目编号和应用程序标识符。
以下是浏览器网络响应的示例:
{
"status": "IN_PROGRESS",
"message": "There was an error processing your
distribution. Ensure you are uploading a valid IPA or APK and try again."
}
要解决此问题,请按照下列步骤操作:
验证 IPA 的大小。所有二进制文件的最大文件大小限制为 2048 MiB,略高于 2 GB。
如果 IPA 大小在文件大小限制内并且可重现,请执行以下步骤:
检查您的
Info.plist
文件并确认CFBundleDisplayName
是否包含任何<array>
分隔符。删除
<array>
分隔符并重建您的应用程序。上传应该会成功。如果您仍然遇到问题,请联系Firebase 支持。
如果 IPA 大小超过文件大小限制,请进行任何必要的更改以减小文件大小。
如果减小 IPA 文件大小不能解决问题,请联系Firebase 支持并询问有关使用Testflight的问题。
安装和测试应用程序
使用以下提示解决测试人员在安装和测试您的应用程序时可能遇到的问题。
当用户创建 Google 帐户时,他们会自动收到一个 Gmail 地址。
如果测试人员没有 Google Workspace 或 Gmail 地址,或者他们更愿意使用其他电子邮件地址登录,请要求测试人员将非 Gmail 电子邮件地址链接到该帐户并使用该电子邮件地址登录。
选择备用电子邮件时,测试人员必须遵循以下准则:
- 不要使用 Gmail 地址。
- 不要使用已经关联到其他 Google 帐户的电子邮件地址。
- 使用此电子邮件地址登录时,请记住使用您的 Google 帐户密码。
有关详细信息,请参阅使用其他电子邮件地址登录您的 Google 帐户。
如果测试人员使用与发送邀请的电子邮件地址不同的电子邮件地址接受了电子邮件邀请,则测试人员可能无法看到正确的应用程序或构建。
开发人员发送邀请并添加到新构建的电子邮件(电子邮件 A)可以不同于测试人员用来接受邀请的电子邮件(电子邮件 B)。这会在幕后创建一个链接。每当将电子邮件 A 添加到新构建中时,实际上是电子邮件 B 获得了访问权限。
如果测试人员接受了具有不同电子邮件地址的电子邮件邀请,请按照以下步骤解决问题:
从 Firebase 控制台的 App Distribution 页面的Testers & Groups选项卡中删除测试人员。现有邀请将被删除。
重新邀请测试人员测试您的应用。测试人员应该会收到一封邀请电子邮件。
确保测试人员接受具有相同电子邮件地址的邀请。
如果发生以下情况之一,测试人员可能收不到电子邮件通知:
电子邮件通知被发送到垃圾邮件文件夹。
电子邮件过滤器已设置。
邀请被发送到一个电子邮件帐户,但测试人员接受了另一个电子邮件帐户。测试人员收到最初发送邀请的电子邮件帐户的新发布电子邮件。
The tester was previously invited but did not accept the initial invitation. If the tester is added to subsequent releases, App Distribution won't automatically send release notifications to that tester because the tester didn't accept the initial invitation.
Solution 1
Ask the tester to check their spam folder and any email filters they set in their email service.
If the tester unsubscribed from the emails, ask the tester to do the following:
- Find an email that the tester previously received from the app.
- Click Manage email settings at the bottom and click Allow emails to resubscribe.
Solution 2
Delete the tester from the Testers & Groups tab in the App Distribution page in the Firebase console. This action removes existing invitations.
Re-invite the tester to test your app. The tester should receive an invitation email. Make sure that the tester accepts the invitation with the same email address that the invitation was sent to.
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.
The Developer Mode Required error appears when you try to launch an ad hoc-provisioned iOS app on iOS 16 or later without first enabling Developer Mode.
To enable Developer Mode and resolve this error, follow these steps:
- On your iPhone, open the Settings app and then tap Privacy & Security .
- Scroll down to Security and tap Developer Mode .
- Tap the Developer Mode slider.
- Tap Restart .
- After the device restarts, unlock the device. The Turn on Developer Mode? dialog appears.
- Tap Turn On . You can now launch your app and start testing.
If you're installing an Ad Hoc distribution, this message appears when the developer hasn't yet configured their app to run on your test device. To make the app available to you, the developer must complete the instructions in Register additional devices .
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.
When you encounter a 403 error, this means that the account you're using doesn't have permission to install and test apps. Access is determined by the administrator of your account's domain in Google Workspace.
If you believe you should have permission to install and test apps, ask your Google Workspace account admin to change your account settings. Your admin should follow the instructions in Manage access to services that aren't controlled individually .
If you have multiple accounts, try logging in with a different account that is not restricted from installing and testing apps.
Enabling in-app alerts with the App Distribution iOS SDK
Use the following tips to troubleshoot issues that involve enabling in-app new build alerts using the App Distribution iOS SDK.
If you have already set up the App Distribution iOS 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. To learn how, see the Google Analytics documentation .
Run your app in a simulator and search for the string "[Firebase/AppDistribution]".
Check that the tester has access to the new release:
If a valid release object is returned, it's likely that there's an issue in the View Controller lifecycle where the alert dialog is loaded before the View appears.
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 updates, ask them to follow the tips below to make sure they accepted the invitation to test your app and that they 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.
Make sure that the new app release is available in the web clip.
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 Firebase App Testers API. For more information, see Enable the App Distribution Tester API .
Under Key restrictions , make sure that the Firebase App Testers API is included in the list of allowed APIs.
If you typically clear UserDefaults on signing out, you may be clearing your tester's state. App Distribution stores a flag that indicates whether your tester has already signed into the app. For more information, see the GitHub repository .
Frequently asked questions
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 .
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.
See Register additional devices .
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.
For more information, see App Distribution supports a maximum of 1,000 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 appears 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.
When the release is 30 days from the expiration date, an app release expiration notification appears on your release in the App Distribution page of the Firebase console and in the App Distribution tester web app.
App Distribution supports a maximum of 1,000 releases
App Distribution allows a maximum of 1,000 releases per app. When your app reaches the 1,000 app release limit, App Distribution automatically deletes the oldest releases above the limit.
If you want to manually manage your app releases, use the App Distribution REST API to list and delete app releases in bulk.
If you have questions, contact Firebase Support .
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 .
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.
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 )Delete 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.