メインコンテンツにジャンプします。

iOSおよびAndroidアプリをテスターに配布する方法

iOSおよびAndroidアプリをテスターに配布する方法: TestFlight、Google Playテストトラック、内部アプリ共有、Firebase App Distribution、ad hocビルド

記事のクレジット

マーティン・ドナディュー

ライター

Valeria

レビュアー

ジョーダン

エディター

iOSアプリとAndroidアプリをテスターに配布する方法

iOSアプリをテスターに配布するには、TestFlight(内部テスターは即時、外部テスターは短いBeta App Reviewの後)または登録済みデバイス向けのアドホックビルドを使用します。Androidの場合は、Google Playテストトラック(内部、閉鎖またはオープン)、Playの内部アプリ共有(一時的なリンク)、またはFirebase App Distributionまたは直接ダウンロードを使用して署名済みAPKを共有します。

このガイドでは、すべてのオプションを比較し、Capacitor アプリ用にそれぞれの設定方法を示し、テスターが一般的に遭遇するエラーをリストアップします。

選択方法

方法 プラットフォーム テスターの最大数 テスターが受け取る前にレビュー テスト用にiOSとAndroidアプリを配布する 最高の選択
内部テストフライト iOS 100名のチームメンバー なし App Store Connectユーザー、テストフライトアプリ あなたのチーム
コンテキスト: Enterprise製品/価格ページ。役割: UIラベル。ページ: enterprise.astro。メッセージキー: enterprise_partnership_your_team_label (Enterprise Partnership Your Team Label)。 iOS 10,000 外部テストフライト ベータアプリレビュー(バージョンの最初のビルド) ベータユーザー、クライアント
アドホック iOS 1年あたり1つのデバイスタイプあたり100台のデバイス いいえ 登録済みUDID、開発者モード 小規模なQAチーム、Appleのレビューなし
プレイ内側のテスト Android 100 完全なレビューなし、通常数分以内に利用可能 Googleアカウントがメールリストに登録されている あなたのチーム
iOSとAndroidのアプリをテスターに配布する Android メールリストまたはGoogleグループ Yes ページ/エリア: Capgoのソリューションマーケティングページ。役割: ショートUIラベルまたはナビゲーションアイテム。見つける場所: page solutions/beta-testing.astro。メッセージキー`solutions_beta_testing_compare_native_tf` (ソリューション ベータテスト 比較ネイティブ Tf)。|ページ/エリア: Capgoのソリューションマーケティングページ。役割: ショートUIラベルまたはナビゲーションアイテム。見つける場所: page solutions/pr-preview.astro。メッセージキー`solutions_pr_compare_native_tf` (ソリューション PR 比較ネイティブ Tf)。 Googleアカウント、オプトインリンク
ベータユーザー、12テスターの要件 Android Playオープンテスト Yes 無制限または制限 オプトインリスト表示
内部アプリ共有を実行 Android リンクを持つ誰でも 否 Googleアカウント、設定有効 クイックQAビルド、任意のバージョン code
Firebase App Distribution 両方 大規模 否 メール招待; iOSには登録済みのUDIDが必要 クロスプラットフォームQA
直接APKリンク Android 誰でも いいえ 不明なソースを許可する 内部テスト

ルールのヒント:

  • ストアに配信するビルドと同じですか? TestFlightとPlayトラックを使用します。テスターが使用するバイナリは、プロモーションされるバイナリです。
  • 毎日QAビルド? 両方のストアで内部テストを行う、またはFirebase App Distributionを使用します。
  • Web層の変更を数分でテストする必要があります? live updateをテストチャンネルに配信するのではなく、別のバイナリを配信する。

配布する前に署名

すべてのテストビルドは署名する必要があります。

  • iOS テストビルドはApp Store Connectのプロファイル(TestFlight)またはAd Hocのプロファイル(直接インストール)を使用します。両方ともApple Distribution証明書を使用します。詳しくはiOS証明書とプロビジョニングプロファイルの説明を参照してください。 Android Playトラックのビルドはアップロードキーで署名されたAABです。直接インストールの場合は、リリースキーで署名されたAPKが必要です。デバッグAPKもインストールできますが、挙動が異なり(デバッグ可能、署名が異なる)、Playビルドでアップグレードすることはできません。 アドホック App Store Connect profile (TestFlight) or an.
  • Android iOS certificates and provisioning profiles explained

iOS: テストフライト

アップロード

Xcodeから Product > Archive, すると Distribute App > App Store Connect > アップロードコマンドラインまたはCIから、 .ipa App Store Connect API キーを使用してアップロードするか、クラウドビルドサービスに任せる。

App Store Connectに追加する

HTTPS標準暗号化のみを使用する場合は、App Store Connectが毎回ビルドの輸出管理質問を求めないようにするため ios/App/App/Info.plist 処理には数分から約1時間かかります。ビルドが完了するとメールが届きます。

<key>ITSAppUsesNonExemptEncryption</key>
<false/>

App Store Connectの質問を避けるため

内部テスト

  1. App Store Connectでアプリを開きます TestFlight > 内部テスト, グループを作成します。
  2. チームメンバーを追加します。 App Store Connectの役割 (管理者、アプリマネージャー、開発者、マーケティング…) を持つ必要があります。 最大 100 人。
  3. 有効 自動配布 新しいビルドがグループに送られます。
  4. テスト用に TestFlight アプリをApp Storeからダウンロードし、招待を受け入れる。

アプリをApp Storeからインストールし、招待を承知します。

外部テスト

  1. TestFlight > 外部テスト > + グループを作成する
  2. メールアドレスでテスターを追加するか、オプションでテスター数を制限した パブリックリンク パブリックリンク
  3. グループにビルドを追加し、テスト情報を入力する テスト情報 (テスト対象、フィードバックメール、ベータアプリの説明、デモログインなど)
  4. 提出 ベータアプリレビュー. 最初のバージョンのビルドは1日以内にレビューされます。 同じバージョンの後続のビルドは、フルレビューなしで配布されることがよくあります。

10,000名のテスターをサポート

テストフライトの制限事項

  • ビルドは 90日.
  • テスターはiOSバージョンをサポートする必要があります(Capacitor 8はiOS 15以降を必要とします)
  • テストフライトのビルドでは、App Storeのプロダクション署名を使用するため、プッシュ通知は プロダクション APNs環境
  • インアプリ購入はテストフライトではサンドボックスで実行され、課金されません

iOS: ad hoc配布

ad hocビルドは、Apple Developer Portalで登録したデバイスに直接インストールされ、テストフライトやAppleのレビューなしで実行されます

  1. 各テスターのUDIDを収集する必要があります。テスターは、自身の電話でUDIDを取得できます iOS UDID の検索ツール, または Finder または Xcode から読み取ることもできます。デバイスが接続されているときに。
  2. デバイスを登録する Certificates, Identifiers &amp; Profiles &gt; デバイス.
  3. プロビジョニングプロファイルの作成 アドホック プロビジョニングプロファイルを作成し、そのデバイスを含むものをダウンロードする。
  4. プロファイルでビルドする .ipa プロファイル (Xcode: アプリを配布 &gt; リリーステスト, これは Ad Hoc の新しい名前です。
  5. インストールする:
    • ドロップ .ipa をFinderまたは Xcode > Window > Devices and Simulators.
    • Orホストする itms-services HTTPSでHTTPSのmanifestを使用して、テスターはリンクをタップできます。サービスとしてFirebase App Distributionはこれを行っています。
  6. On iOS 16以降、Mac (XcodeまたはApple Configurator)から .ipa をインストールするには 開発者モード をデバイスに有効にする必要があります (設定>プライバシーとセキュリティ)。リンクからインストールする場合には必要ありません。iOSのDeveloper Modeを有効にする方法については itms-services を参照してください。 iOS の開発者モードを有効にする方法.

Adding a new tester means registering their UDID, regenerating the profile and rebuilding. Device slots (100 per device family) only reset when your membership year renews, so do not register devices casually.

Android: Google Play のテストトラック

Play Console には 3 つのテストトラックと生産用のトラックがあります。すべてのトラックには、アップロードキーで署名された AAB が必要です。

内部テスト

  1. テスト > 内部テスト > テスター: メールリストを作成します (最大 100 アドレス)。
  2. 新しいリリースを作成、アップロードされた AAB をアップロードし、リリースノートを追加し、保存して展開します。
  3. コピーしてください オプインリンク テストに送信します。テスターはそれを受け入れ、Play Store からインストールします。

内部リリースは通常、数分以内に利用可能です。最初のリリースは、Google がアプリを処理するまで待つ必要があります。

クローズド テスト

クローズド トラッキングは、サポート メールリストまたは Google グループでレビューされます。このトラッキングは、2023 年 11 月 13 日以降に作成された個人開発者アカウントに適用される 14 日間の 12 人のテスターの規則のために必要です。 14 日間 12 人のテスター 規則は、2023 年 11 月 13 日以降に作成された個人開発者アカウントに適用されます。プロダクション アクセス前に、Google グループを使用すると、テスターが簡単に参加できるようになります。 詳細は、Apple と Google Play の開発者アカウントを作成する方法を参照してください。.

オープン テスト

Play リストから誰でも参加できます。ストア リストが完了したら、パブリック ベータとして使用してください。フィードバックはプライベートで、パブリック レーティングに影響しません。

私たちの Android ベータ テスト ガイド 詳細な比較は、Android: インターナル アプリ シェアリング を参照してください。

Android: インターナル アプリ シェアリング

Play ストアを通じて、任意の APK または AAB をデバイスに迅速に配布できます。バージョン code の規則やレビューなしで使用できます。

  1. Play コンソールで 内部アプリ共有 (テスト中) アップローダーを追加。
  2. APKまたはAABをアップロードしてください。リンクが取得されます。
  3. テスターはPlay Storeアプリを開き、設定をタップし、 Play Store版 7回タップして開発者設定を表示し、有効にします。 内部アプリ共有.
  4. テスターはリンクを開き、インストールします。

プルリクエストビルドのQAに役立ちます。バージョンコードの増加は必要ありません。

Android: 直接APKとFirebase App Distribution

直接APK

署名済みリリースAPKをビルドしてください。新しいCapacitorプロジェクトには release 署名設定を追加しない場合、 assembleRelease そうすると、署名されていないAPKが作成され、インストールされません。署名設定を追加するには、 signingConfigs.release ブロック(キーストアのパスとパスワード、通常はキーストアから読み込まれます)を追加し、 key.properties) to android/app/build.gradle 共有 buildTypes.release.signingConfig リンクを通じて共有します。テスターはブラウザまたはファイルマネージャーで未知のアプリをインストールし、ファイルを開くことを許可します。Play Store版がすでにインストールされている場合は、署名が異なるため、アンインストールする必要があります。USB経由でインストールすることもできます。

bun run build
bunx cap sync android
cd android && ./gradlew assembleRelease

Share android/app/build/outputs/apk/release/app-release.apk 2026年9月30日以降、ブラジル、インドネシア、シンガポール、タイでは、認定されたAndroid端末では、パッケージ名が検証された開発者によって登録されているアプリのみをインストールします。2027年のグローバルロールアウトが計画されています。テスターがその国にいる場合は、Android Developer ConsoleまたはPlay Consoleでパッケージ名を登録してください。 adb install -r app-release.apk は影響を受けません。 Share).

USB経由でインストールすることもできます。 adb Androidの開発者オプションを有効にする方法についてはこちらを参照してください。

Firebase App Distribution

Firebase App Distributionは両方のプラットフォームに対応し、メール招待を送信し、どのビルドをインストールしたかを追跡します。

bun add -g firebase-tools
firebase login

firebase appdistribution:distribute android/app/build/outputs/apk/release/app-release.apk \
  --app 1:1234567890:android:abc123def456 \
  --groups "qa-team" \
  --release-notes "Fix checkout crash"
  • AndroidのテスターはメールリンクまたはApp Testerアプリからインストールします。
  • iOSのテスターはまだアドホック(または開発)プロファイルにいる必要があります。App Distributionは招待を受け入れたときにUDIDを収集しますが、登録と再構築は自分で行う必要があります。
  • AABの配布にはFirebaseプロジェクトをGoogle Playにリンクする必要があります。

CIランナーを毎回Macと署名を維持したくない場合は Capgo ビルド CapgoはクラウドでCapacitorアプリをビルドします。テストビルドの場合はストアの提出をスキップし、時間制限付きダウンロードリンクにバイナリをアップロードし、QRコードcode:

# Android APK/AAB for testers, no Play upload
bunx @capgo/cli@latest build request com.example.app \
  --platform android --no-playstore-upload --output-upload --output-retention 2d

# iOS ad hoc build (no App Store submission)
bunx @capgo/cli@latest build request com.example.app \
  --platform ios --ios-distribution ad_hoc --output-upload

# iOS build uploaded to TestFlight for external groups
bunx @capgo/cli@latest build request com.example.app \
  --platform ios --ios-testflight-groups "Beta Testers"

追加 --output-record build.json CIでリンクを読み取って bunx @capgo/cli@latest build last-output --path build.json --field outputUrl それをプルリクエストまたはチャットに投稿する Capgo ビルドドキュメント すべてのオプションをリスト

Web の変更に対してビルドを再構築する必要がなくなる

Capacitor ライブアップデート Capgoプルリクエストごとにインストール可能なプレビューを作成

bunx @capgo/cli@latest bundle upload --channel beta

トラブルシューティング iOS ad hoc でのインストールに失敗.

Troubleshooting

App が iOS で開かれてすぐに閉じる __CAPGO_KEEP_0__ security cms -D -i profile.mobileprovision.

__CAPGO_KEEP_0__ 開発者モードがオフ (アドホック/開発用ビルド)、またはプロファイルが期限切れです。

テストフライトビルドが「処理中」に詰まっています。 1時間以内に待ってください。失敗した場合は、メールに理由が記載されており、よく使用説明文の欠如 (NSCameraUsageDescription など) またはアイコンの問題が原因です。

テストフライト「非準拠」。 App Store Connectでエクスポートコンプライアンスの質問に答えますか、または追加します。 ITSAppUsesNonExemptEncryption to Info.plist.

to 異なる署名のバージョンがすでにインストールされている、またはAPKが署名されていない、または損傷している場合、既存のアプリをアンインストールしてください。

テスターはPlayストアでアプリを確認できない。 Wait a few minutes, make sure they are signed in with the invited account, and check that the release is rolled out to the track and their country is available.

“バージョン code はすでに使用されています。” アップデート versionCode に android/app/build.gradle。内部アプリ共有は例外です。

テストフライトではプッシュ通知が届きません。 テストフライトは生産環境のAPNs環境を使用しています。 aps-environment エンタイトルメントとプッシュプロバイダーの環境設定を確認してください。

  1. テストフライトの内部グループと自動配布、プレイの内部テストトラック、毎回のマージに main.
  2. テストフライトの外部グループとプレイのクローズドテストトラックのベータユーザー向けに、毎週更新
  3. Live Update beta チャンネルでウェブのみの修正の間のビルド間の
  4. ベータが安定したら、両方のストアで同じビルドをプロモートし、生産環境に従ってください。 初めてのアプリレビューガイド.
Live updates for Capacitor apps

ウェブ層のバグが生じた場合、Capgo を通じて修正を配信するのではなく、数日間待ってアプリストアの承認を待つのではなく、ユーザーはバックグラウンドで更新を受け取り、ネイティブの変更は通常のレビュー経路を通る

マーティンから人間のサポート

スタートしてください

最新のブログ記事

Capgo は、プロフェッショナルなモバイルアプリを作成するために必要な最良の洞察を提供します。