- Updated mobile_scanner dependency version to 7.0.0 in pubspec.yaml. - Adjusted versions of several packages in pubspec.lock. - Added exclusion of arm64 architecture for iOS simulator in Podfile and xcconfig files to support Apple Silicon. - Cleaned up Podfile.lock by removing unused dependencies. This update ensures compatibility with the latest mobile_scanner and improves build stability on M1/M4 devices.
iOS
Flutter + CocoaPods. Нативка через плагины — зависимости смотри в Podfile / Podfile.lock.
Окружение
Полный Xcode (не только CLT). После апдейта Xcode:
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
sudo xcodebuild -runFirstLaunch
Нет нужного iOS в сборке — Xcode → Settings → Platforms, докачать runtime. flutter doctor -v для быстрой проверки toolchain.
Сборка из репозитория
Из корня (важно для Generated.xcconfig):
flutter pub get
cd ios && pod install && cd ..
Открывать Runner.xcworkspace, не Runner.xcodeproj.
Ключ Yandex MapKit: в Info.plist — YandexMapKitApiKey = $(YANDEX_MAPKIT_API_KEY). Значение задаётся в ios/Flutter/Debug.xcconfig, Release.xcconfig, Profile.xcconfig (в конце файла; опционально перед этим #include? "Secrets.xcconfig" — см. Secrets.xcconfig.example). В AppDelegate.swift до super.application вызываются YMKMapKit.setLocale / setApiKey из plist — иначе SDK падает при регистрации плагина.
Подпись
Runner → Signing & Capabilities, свой Team. Bundle id: com.sparkit.beHappy — должен совпадать с App ID в developer portal под TestFlight / App Store.
Артефакты
flutter build ipa
.ipa — в build/ios/ipa/ (точный путь Flutter печатает в конце).
Альтернатива: Xcode → Archive → Distribute. ExportOptions.plist в репу не коммитим.
Симулятор
flutter devices
flutter run -d <device_id>
У mobile_scanner 5.x в Pods тянется Google ML Kit; на симуляторах Apple Silicon под свежим iOS Xcode часто ругается на arm64 и криво матчит destination. Если flutter run на симе отвалился — собери на физическом устройстве или проверь обновления плагина / обходы в Podfile под твою связку Xcode + runtime.