ITMS-90208: Invalid bundle — Mindest-iOS-Version
Ein Framework nennt ein älteres Mindest-iOS als sein Binary.
Was ist ITMS-90208?
Apples Ablehnung, wenn ein Framework in der App in seiner eigenen Info.plist ein älteres Mindest-iOS angibt, als sein Binary voraussetzt. Vor Flutter 3.41 war das meist App.framework, dessen Info.plist aus ios/Flutter/AppFrameworkInfo.plist kopiert wurde und ein altes MinimumOSVersion behielt. Seit 3.41 schreibt der Build diesen Schlüssel selbst, ein Flutter-Update behebt es also; in einer älteren Version setzen Sie ihn dort auf die Version, für die das Binary gebaut ist.
Woher das in einer Flutter-App kommt
Jedes Framework in der App hat eine eigene Info.plist, und App Store Connect lehnt den Upload ab, wenn eines ein älteres Mindest-iOS angibt, als sein Binary voraussetzt. Vor Flutter 3.41 war das meist App.framework: Seine Info.plist wurde aus ios/Flutter/AppFrameworkInfo.plist kopiert, deren MinimumOSVersion dort blieb, wo das Projekt-Template sie gesetzt hatte. Seit 3.41 schreibt der Build diesen Schlüssel selbst und entfernt den alten aus der Datei. Ein als Framework ausgeliefertes Plugin kann dieselbe Abweichung haben.
So beheben Sie es
- Führen Sie die kostenlose Build-Prüfung mit der .ipa aus. Sie nennt das Framework und beide Versionen.
- Für
App.frameworkaktualisieren Sie Flutter auf 3.41 oder neuer. Geht das noch nicht, setzen SieMinimumOSVersioninios/Flutter/AppFrameworkInfo.plistauf die Version, für die das Binary gebaut ist. - Für das Framework eines Plugins aktualisieren Sie das Plugin auf eine Version, deren Framework die passende Version angibt.
- Führen Sie
flutter cleanaus und bauen Sie neu.
Die kostenlose Build-Prüfung liest Ihre .ipa im Browser und nennt die Ursache dieser und der anderen Ablehnungen, ohne etwas hochzuladen.
Oder lassen Sie den ganzen Build prüfen: Die Store-Prüfung kostet 190 €, 2 Arbeitstage.