Ошибка при сборке приложения iOS из флаттера - PullRequest
0 голосов
/ 06 марта 2020

Я пытаюсь создать приложение iOS из флаттера и получаю ошибки ниже.

enter image description here

1 Ответ

0 голосов
/ 06 марта 2020

Чтение https://github.com/flutter/flutter/issues/17749

Проверьте конфигурацию здесь

Короче:

Каркасы флаттера содержат armv7, arm64, и x86_64, но НЕ i386. Когда вы запускаете в симуляторе, Xcode молча отображает armv7 в симулятор i386 и arm64 в симулятор x86_64. ONLY_ACTIVE_ARCH = YES параметр сборки собирается только для архитектуры устройства или симулятора, на который вы ориентируетесь. Xcode docs:

Если включено, строится только активная архитектура. Этот параметр будет игнорироваться при построении с назначением запуска, которое не определяет конкретную c архитектуру, такую ​​как назначение запуска Generi c Device.

Так что, если вы нацеливаетесь на действительно недавний iOS устройство, оно будет собирать arm64, и если вы нацеливаетесь на недавний симулятор, оно будет собирать x86_64 ONLY_ACTIVE_ARCH = YES по умолчанию для конфигурации сборки Debug для новых проектов Xcode.

Если у вас ONLY_ACTIVE_ARCH = NO и вы нацелились на реальное устройство, оно соберет armv7 и arm64 и будет успешно выполнено. Если вы нацелены на симулятор, он попытается собрать i386 и x86_64 и потерпит неудачу с этой ошибкой, потому что i386 отсутствует. ONLY_ACTIVE_ARCH = NO - это значение по умолчанию для конфигураций сборки выпуска для новых проектов Xcode, потому что вам нужно опубликовать sh все действующие архитектуры в App Store.

Flutter не поддерживается в Release на симуляторе.

...