checkApp

Стори

ITMS-90208: Invalid bundle — мінімальна версія iOS

Фреймворк заявляє старішу мінімальну iOS, ніж його бінарка.

Що таке ITMS-90208?

Відмова Apple, коли фреймворк у застосунку заявляє у власному Info.plist старішу мінімальну iOS, ніж та, під яку зібрано його бінарку. До Flutter 3.41 це зазвичай був App.framework: його Info.plist копіювався з ios/Flutter/AppFrameworkInfo.plist і зберігав старий MinimumOSVersion. Починаючи з 3.41 збірка записує цей ключ сама, тож оновлення Flutter це виправляє; на старішій версії вкажіть там версію, під яку зібрано бінарку.

Звідки це береться у Flutter-застосунку

Кожен фреймворк у застосунку має власний Info.plist, і App Store Connect відхиляє завантаження, коли один із них заявляє старішу мінімальну iOS, ніж та, під яку зібрано його бінарку. До Flutter 3.41 це зазвичай був App.framework: його Info.plist копіювався з ios/Flutter/AppFrameworkInfo.plist, де MinimumOSVersion лишався таким, як його поставив шаблон проєкту. Починаючи з 3.41 збірка записує цей ключ сама й прибирає старий із файлу. Плагін, що постачається як фреймворк, може мати таку саму розбіжність.

Як виправити

  1. Запустіть безкоштовну перевірку білда на .ipa. Вона назве фреймворк і обидві версії.
  2. Для App.framework оновіть Flutter до 3.41 або новішого. Якщо поки не можна, вкажіть в ios/Flutter/AppFrameworkInfo.plist MinimumOSVersion, під яку зібрано бінарку.
  3. Для фреймворку плагіна оновіть плагін до версії, де фреймворк заявляє правильну версію.
  4. Запустіть flutter clean і зберіть знову.

Безкоштовна перевірка білда читає ваш .ipa в браузері й називає причину цієї та інших відмов, нічого не завантажуючи.

Або доручіть перевірити весь білд: аудит готовності до сторів — 190 €, 2 робочі дні.

Усі коди відмов