Flutterで開発したアプリをXcodeを使ってTestFlightにアップロードしようとした際、Apple Developerアカウントの違いやBundle Identifierの重複によりビルドが失敗することがあります。本記事では、この問題の原因と解決策をわかりやすく解説します。
エラーの原因
エラー「Team “〇〇” is not enrolled in the Apple Developer Program」は、アップロードに使用しているApple IDが有効な開発者プログラムに登録されていないことを示しています。
また、「Failed Registering Bundle Identifier: The app identifier “〇〇” cannot be registered to your development team because it is not available」というメッセージは、指定したBundle Identifierがすでに他のチームで使用されている場合に発生します。
解決策:Apple Developer Programへの登録
まず、TestFlightやApp Store Connectにアップロードするには、有効なApple Developer Programへの登録が必要です。個人アカウントでも登録すれば、個人チームとしてビルド可能です。
登録後、XcodeでApple IDを追加し、対象のチームを選択してください。
Bundle Identifierの管理
新しいチームに切り替えた場合、元のチームで作成したBundle Identifierは使用できません。そのため、チーム固有のユニークなBundle Identifierを設定する必要があります。
例として、com.example.myappの形式で新しい識別子を作成し、Xcodeのターゲット設定でBundle Identifierを変更します。
既存プロジェクトの設定変更手順
1. Xcodeでプロジェクトを開く
2. ターゲットの「Signing & Capabilities」タブを選択
3. 新しいApple IDを追加し、チームを選択
4. Bundle Identifierをユニークなものに変更
5. Clean Build Folderしてからアーカイブ作成
この手順で、元のチームとの競合を避け、新しいチームでアーカイブを作成できるようになります。
まとめ
TestFlightへのアップロード失敗は、Apple Developer Programへの未登録やBundle Identifierの重複が主な原因です。解決には、使用するチームに登録済みのApple IDを設定し、ユニークなBundle Identifierを設定することが重要です。
これにより、Flutterで開発したアプリをXcodeから正しくアーカイブし、TestFlightでβ版を配布できるようになります。


コメント