iOS+
Android
このページでは、App Distribution によるアプリの配布とテストに関するトラブルシューティングのヘルプ情報と、よくある質問への回答を紹介します。
アプリの配布
テスターへのアプリの配布で発生する可能性がある問題を解決する際に、以下のヒントを参考にしてください。
連絡先メールアドレスがないため、アプリを配布できない
アプリをアップロードすると、次のようなエラーが発生することがあります。
「アプリ <app-id>
の連絡先メールアドレスが見つかりません。Firebase コンソール内の App Distribution にアクセスして設定してください。」
可能であれば、Firebase コンソールで連絡先メールアドレスを設定します。問題が解決しない場合は、Firebase サポート にお問い合わせください。
アプリのプロビジョニング中にエラーが発生する(400、409、500 エラー)
プロビジョニング中にエラー 400、409、500 が繰り返し発生する場合は、Firebase サポート にお問い合わせください。その際、お客様の Firebase プロジェクト番号とアプリ ID をお知らせください。
APK ファイルをアップロードできない
APK のサイズを確認します。バイナリ ファイルの合計サイズの上限は 2,048 MiB で、2 GB をわずかに超えます。
APK のファイルサイズがこの制限内にあり、再現可能な場合は、Firebase サポート にお問い合わせください。
fastlane を使用して APK をアップロードできない。APK が署名されていない。
次のコマンドを使用して、APK が署名されていることを確認します。
apksigner verify --verbose ~/app-distro/app-distro-apps/[path_name]/app/ build/outputs/apk/debug/app-debug.apk
Android App Bundle(AAB)の配布
ソーシャル ログイン / サードパーティ API プロバイダのエラーの受信
AAB を App Distribution にアップロードすると、テストアプリの署名鍵証明書を使用して、生成された APK の再署名が Google Play によって自動的に行われます。サードパーティのサービスを引き続き使用する場合は、プロンプトが表示されたときに、API プロバイダにアプリを登録する必要があります。署名されたアプリのテスト証明書は Firebase コンソールで表示できます。
アップロードした AAB は Google Play にも表示されますか?
App Distribution にアップロードした AAB ビルドは、Google Play デベロッパー アカウントに表示されません(App Bundle エクスプローラや内部アプリ共有にも表示されません)。
Firebase と Google Play のリンクを解除するとどうなりますか?
Firebase Android アプリと Google Play のリンクを解除すると、次のようになります。
新しい App Bundle を App Distribution にアップロードしたり、それらを App Distribution と Google Play のインテグレーションを介して Google Play にエクスポートしたりすることができなくなります。
既存のビルドは、Firebase App Distribution ダッシュボードとテスターで引き続き使用できます。
Firebase と Google Play 間でこれまでエクスポートされたデータには、引き続き両方のプロダクトからアクセスできます。
アプリを Google Play にリンクし直すことはできますか?
App Distribution から Android App Bundle(AAB)を配布し、アップロードした AAB を Firebase プロジェクトと Google Play デベロッパー アカウントの両方に自動的にリンクするには、次の要件を満たしている必要があります。
Google Play デベロッパー アカウントに、オーナーまたは管理者のいずれかのアクセスレベル が付与されている。
Firebase プロジェクトに対して、オーナー または Firebase 管理者 のいずれかのロールが付与されている。
アプリが Firebase と Google Play デベロッパー アカウントに登録されている。つまり、Firebase Android アプリと Google Play アプリの両方が必要になります。
Google Play のアプリと Firebase Android アプリが同じパッケージ名で登録されている。
Google Play のアプリがアプリ ダッシュボードで設定 され、いずれかの Google Play トラック(内部テスト、クローズド テスト、オープンテスト、製品版)に配布されていること。
Google Play でアプリの審査が完了し、アプリが公開されている。[アプリのステータス] 列に、内部テスト(未公開の内部テスト以外)、クローズド テスト、オープンテスト、製品版のいずれかのステータスが表示されている場合、アプリは公開されています。
上記の条件を満たしていないアプリをアップロードし、現在、そのアプリが要件を満たしている場合は、Firebase Android アプリと Google Play のリンク を再試行できます。
アプリのインストールとテスト
テスターがアプリをインストールしてテストする際に発生する可能性がある問題を解決する際は、次のヒントを参考にしてください。
テスターが Google アカウントを持っていない
Google アカウントを作成すると、自動的に Gmail アドレスが付与されます。
テスターに Google Workspace または Gmail のアドレスがない場合、またはテスターが別のメールアドレスでログインすることを希望している場合は、Gmail 以外のメールアドレスをアカウントにリンクして、そのメールアドレスを使用するようにテスターに伝えてください。
予備のメールアドレスを変更する場合は、以下のガイドラインに従ってください。
Gmail アドレスは使用しない。
別の Google アカウントにリンクされているメールアドレスは使用しない。
このメールアドレスでログインする場合は、必ず Google アカウントのパスワードを使用してください。
詳しくは、別のメールアドレスで Google アカウントにログインする をご覧ください。
テスターが適切なアプリやビルドを確認できない
テスターが招待状の送信先と異なるメールアドレスで招待を承諾した場合、テスターは適切なアプリやビルドを確認できない場合があります。
デベロッパーが招待状を送信して新しいビルドに追加するメールアドレス(メールアドレス A)と、テスターが招待の承諾に使用するメールアドレス(メールアドレス B)が異なる場合があります。この場合、バックグラウンドでリンクが作成されます。メールアドレス A が新しいビルドに追加されると、実際にアクセス権が付与されるのはメールアドレス B になります。
テスターが別のメールアドレスで招待を受諾した場合に問題を解決する手順は次のとおりです。
Firebase コンソールの App Distribution ページで、[テスターとグループ ] タブの [すべてのテスターを表示 ] セクションからテスターを削除します。既存の招待状が削除されます。
アプリをテストするテスターを再度招待します。テスターに招待メールが届きます。
テスターが同じメールアドレスで招待を承諾していることを確認します。
テスターにメール通知が届かない
次のいずれかの場合、テスターにメール通知が届かないことがあります。
メール通知が迷惑メールフォルダに送信されている。
メールフィルタが設定されている。
テスターが、招待を送信したメール アカウントと異なるメール アカウントで招待を受け入れた。テスターが、最初に招待が送信されたメール アカウントで新しいリリース メールを受け取った。
テスターは以前に招待されているが、最初の招待を承諾しなかった。テスターが今後のリリースに追加されても、最初の招待を承諾していないため、このテスターには App Distribution からリリース通知が自動的に送信されません。
解決方法 1
テスターに、迷惑メールフォルダとメールサービスで設定したメールフィルタを確認するように伝えます。
テスターがメール配信の登録を解除した場合は、次の操作を行うようにテスターに伝えます。
以前にアプリから受け取ったメールを見つけます。
メールの下部にある [Manage email settings ] をクリックして、[Allow emails ] をクリックして再登録します。
解決方法 2
テスターがメール通知を受信せずにアプリの招待を受諾したい場合は、App Tester アプリ(ダウンロード手順 )で、保留中のアプリの招待状を直接表示できます。
注: 保留中のアプリ招待状を表示するには、テスターが App Tester アプリへのログインに使用する Google アカウントのメールアドレスと、デベロッパーからの招待状の受信者のメールアドレスが一致している必要があります。
解決方法 3
Firebase コンソールの App Distribution ページで、[テスターとグループ ] タブの [すべてのテスターを表示 ] セクションからテスターを削除します。この操作を行うと、既存の招待状が削除されます。
アプリをテストするテスターを再度招待します。テスターに招待メールが届きます。招待が届いたメールアドレスで招待を承諾するようにテスターに伝えます。
アプリがインストール済みであることが表示されない
テスターがリリースをダウンロードしてインストールしても、アプリの詳細ユーザー インターフェースに、アプリがインストール済みであることが表示されないことがあります。これは既知の問題です。また、Firebase アプリのバンドル ID が APK のバンドル ID と一致しないこともあります。
APK のバンドル ID が、アップロードに使用した Firebase アプリのバンドル ID と一致していることを確認してください。
不明なアプリをデバイスにインストールできないことを通知する Android アラートが表示される
実行中のアプリやブラウザに Google Play 以外のアプリをインストールする権限が付与されていないと、Android のアラートが表示されます。権限を付与する手順は次のとおりです。
テスト用 APK をインストールできない
テスターのデバイスにテスト用 APK がインストールできない場合:
新しいバージョンの証明書が、テスターのデバイスにインストールされている証明書のバージョンと一致することを確認します。Android システムでは、証明書が一致している場合にのみ、アプリの更新が許可されます。詳細については、署名に関する考慮事項 をご覧ください。
テスターのデバイスの OS バージョンがアプリでサポートされていることを確認します(minSdkVersion
を確認してください)。
Android App Tester アプリにログインできない
App Tester アプリにログインできず、ログイン画面に戻る場合は、制限が設定された Google Workspace(旧 G Suite)を使用している可能性があります。
制限の設定を削除するには:
Google Workspace の [アプリ ] タブ で、Firebase App Distribution が「アクセスをブロック 」に設定されていないことを確認します。
[サービス ] タブ で、Cloud Platform が制限されていないことを確認します。
設定が削除されたら、もう一度ログインしてみてください。
AAB インストール時のエラー: 「アプリをインストールできません」
このエラーは、インストールされるアプリが、デバイスにすでにインストールされているアプリと競合する場合に発生する可能性があります。たとえば、同じアプリの異なるバリエーションで、カスタム権限 や ContentProvider 名 を持つアプリの可能性があります。
問題の発生後すぐにバグレポート を収集するようにテスターに依頼し、レポートを参照して原因の詳細を確認できます。テスターは、新しいアプリをインストールする前に競合するアプリを削除する必要があります。
新しい Android デバイスでテストする
初めてテスターになる場合は、テスターとして設定する をご覧ください。
既存の App Distribution テスターで、テストを行う新しい Android デバイスを入手した場合は、新しいテスターのフロー全体を再度行うのではなく、次の手順を行います。
Android デバイスで appdistribution.firebase.google.com に移動します。
既存のテスター アカウントでログインし、画面下部の [App Tester をダウンロード ] ボタンをクリックして Android App Tester アプリをインストールします。
App Distribution Android SDK でテスター機能を有効にする
App Distribution Android SDK を使用してアプリ内の新しいビルドアラートを有効化したり、アプリ内フィードバックを送信したりする際に問題が発生した場合のトラブルシューティングを行うには、以下のヒントを参考にしてください。
テスターがアプリでフィードバックを開始できない
アプリで App Distribution Android SDK がアプリ内フィードバックをサポートするようにすでにセットアップしている場合に、テスターがフィードバックを送信できない場合は、次の手順を行います。
アプリで App Distribution Android SDK の詳細ログを有効にします。
adb shell setprop log.tag.FirebaseAppDistribution VERBOSE
「FirebaseAppDistribution」でフィルタリングして、アプリログのエラー メッセージを確認します。
テスターがインストールされたリリースにアクセスできることを確認します。
ログに「テスターはこのリソースへのアクセス権がありません」と表示される場合は、テスターがアプリに招待されていないか、テスターがリリースにアクセスできない可能性があります。
Firebase コンソールの App Distribution ダッシュボードで、テスターのデバイスで動作している正確なリリースを見つけて、テスターがリリースカードの [テスター ] タブに表示され、承認済みのステータスであることを確認します。
それでもフィードバックを受け取れない場合は、次の手順を行います。
テストデバイスで、App Tester またはテスター ウェブアプリを使用して Firebase App Distribution にログインします。アプリのテストへの招待を承諾した際に使用した Google アカウントを必ず選択してください。
App Tester またはテスト ウェブアプリを使用してアプリを再度インストールし、テスターがリリースにアクセスできることを確認します。
同じ Google アカウントでログインして、再度フィードバックを送信してください。
Firebase App Testers API を有効にしたことを確認します。詳細については、App Distribution Tester API を有効にする をご覧ください。
[Key restrictions ] で、許可されている API のリストに Firebase App Testers API が含まれていることを確認します。
アプリで送信されたフィードバックを受信しない
フィードバックを送信する際に「送信したフィードバックは、開発モードのため送信されなかった」というメッセージが表示された場合は、次のコマンドを実行してデバイスでデベロッパー モード を無効にします。
adb shell setprop debug.firebase.appdistro.devmode false
google-services.json
ファイルを調べて、正しいプロジェクトとアプリに関するフィードバックを送信していることを確認します。
アプリで App Distribution Android SDK の詳細ログを有効にします。
adb shell setprop log.tag.FirebaseAppDistribution VERBOSE
「FirebaseAppDistribution」でフィルタリングして、アプリログのエラー メッセージを確認します。
テスターがアプリ内アラートを受信できない
アプリで App Distribution Android SDK がすでにセットアップされているにもかかわらず、テスターがアプリ内アラートを受信できない場合は、次の手順を行います。
Firebase App Distribution API から返されたタスクに OnFailureListener
をアタッチして、エラー メッセージを確認します。
Java
firebaseAppDistribution.updateIfNewReleaseAvailable().addOnFailureListener ( e -> {
if (e instanceof FirebaseAppDistributionException) {
// Log exception here
}});
Kotlin
firebaseAppDistribution.updateIfNewReleaseAvailable().addOnFailureListener { e ->
if (e is FirebaseAppDistributionException) {
// Log exception here
}
}
テスターが新しいリリースにアクセスできることを確認します。
アプリでデバッグモードを有効にします。方法については、Google アナリティクスのドキュメント をご覧ください。
シミュレータでアプリを実行し、「FirebaseAppDistribution」という文字列を検索します。
ログでリリースが見つからなかったか、テスターにアクセス権がない場合は、テスターがまだ新しいリリースに関連付けられていない可能性があります。
Firebase コンソールの App Distribution ダッシュボードで、テスターがビルドの配布先に含まれ、承認済み のステータスになっていることを確認してください。
それでもテスターがアラートを受信できない場合は、以下のヒントを参考にして、テスターがアプリのテストへの招待を承諾してテストデバイスを適切に設定しているかどうか確認してください。
テストデバイスで、App Tester またはテスター ウェブアプリから Firebase App Distribution にログインします。アプリのテストへの招待を承諾したときに使用した Google アカウントを必ず選択してください。
新しいアプリのリリースが App Tester またはテスター ウェブアプリで利用できることを確認します。
テスターがアプリを終了後に再度ログインするように求められる
デフォルトでは、テスターは Google アカウントに一度ログインし、テスト機能を有効にするだけで済みます。テスターがアプリを終了して再度開くとログインを求められる場合は、以下のヒントを参考にして、App Distribution の構成が正しく行われていることを確認してください。
Firebase App Testers API が有効になっていることを確認します。詳細については、App Distribution Tester API を有効にする をご覧ください。
[Key restrictions ] で、許可されている API のリストに Firebase App Testers API が含まれていることを確認します。
通常、ログアウト時に SharedPreferences をクリアすると、テスターの状態をクリアできます。App Distribution では、テスターがアプリにログインしているかどうかを示すフラグが格納されます。詳細については、GitHub リポジトリ をご覧ください。
よくある質問
アプリに追加できるテスターに制限はありますか?
Firebase App Distribution には、テスターについて次の制限があります。
テスターを追加するには、追加料金なしの上限の引き上げ をリクエストしてください。
テスターの招待に有効期限はありますか?
招待の有効期間は 30 日です。この期間内にテスターは招待を承諾してアプリのテストを開始できます。招待が期限切れになる 5 日前に、Firebase コンソール内のリリース テスターの横に有効期限のお知らせが表示されます。招待状は、テスターの行のプルダウン メニューから再送信して更新できます。
アプリのリリース期間はどのくらいですか?
次のいずれかの条件に該当する場合、アプリのリリースは App Distribution から削除されます。
アプリのリリースから 150 日以上経過している。
アプリのリリース数が上限の 1,000 を超えており、かつ、アプリのリリースが最新の 1,000 個のアプリ リリースよりも古い。
詳しくは、App Distribution では最大 1,000 個のリリースがサポートされる をご覧ください。
アプリが 150 日の有効期限または 1,000 個のリリース上限に達すると、リリースは App Distribution ダッシュボードと Firebase App Tester アプリから削除されます。テスターがリリースをインストールしている場合、アプリのローカル バージョンは引き続き実行されます。
アプリのリリースを長期間利用できるようにするには、次のいずれかの推奨事項を行います。
アプリのリリースが期限切れになるかリリース上限を超える前に、APK または AAB をダウンロードして App Distribution ダッシュボードからリリースを削除します。次に、APK または AAB を新しいビルドとして App Distribution に再アップロードします。
リリースをダウンロードし、長期アーカイブのために Cloud Storage にアップロードします。
アプリのリリースは 150 日後に期限切れになります
アプリのリリースを Firebase にアップロードすると、アップロード日から 150 日間、App Distribution ダッシュボード にリリースが表示されます。リリースをアップロードすると、テスターに配布できます。テスターは、Firebase App Tester アプリのリリースをテストデバイスにインストールします。
リリースが期限切れになる 30 日前から Firebase App Tester アプリにアプリリリースの有効期限の通知が届きます。
App Distribution は最大 1,000 個のリリースをサポート
App Distribution では、アプリごとに最大 1,000 個のリリースが許可されます。アプリのリリースの上限である 1,000 個に達すると、App Distribution はこの上限を超えた最も古いリリースを自動的に削除します。
アプリのリリースを手動で管理する場合は、App Distribution REST API を使用してアプリのリリースを一括で一覧表示 し、削除 します。
ご不明な点がございましたら、Firebase サポート までお問い合わせください。
デバイスにインストールしたテスト用アプリにアクセスするにはどうすればよいですか?
テスターの方は、Firebase App Tester をダウンロードすることをおすすめします。このアプリを使用すると、すべてのテストビルドに 1 か所からアクセスできます。
自動テスター機能に割り当て上限はありますか?
Firebase App Distribution は Firebase Test Lab インフラストラクチャを使用します。割り当て上限と料金は同じです。テストの割り当ては、1 日あたりのテスト実行数で測定されます。テストの割り当てと料金の詳細については、Test Lab の使用量レベル、割り当て、料金 をご覧ください。
自動テスター機能での再試行の割り当て上限を教えてください。
割り当てを超えると、割り当て超過エラーが発生します。割り当てのリセットには 24 時間ほどかかります。そのため、割り当てが解放されるまで再試行しないでください。ただし、自動テスター インフラストラクチャに関連するエラーが発生した場合は、すぐに再試行すると呼び出しが成功する可能性が高くなります。
自動テスターのベータ版機能を実行するには、どのような権限が必要ですか?
自動テスター機能を使用してテストを実行するには、Firebase プロジェクトに対する編集者のアクセス権が必要です。
テスター アカウントを削除するにはどうすればよいですか?
App Distribution テスター アカウントとそれに関連するデータを削除する手順は次のとおりです。
https://appdistribution.firebase.google.com にアクセスして、Google アカウントでログインします。
右上の settings ([アカウントを管理 ])をクリックし、
[アカウントを削除 ] をクリックします。
省略可: Google アカウントの権限 で、Firebase App Distribution のアクセス権を取り消します。App Distribution アカウントを最初に削除せずにアクセス権を取り消した場合、テスター アカウントとデータは 削除されませんのでご注意ください。