-
Notifications
You must be signed in to change notification settings - Fork 49
build: simplify iOS and Android build configuration #208
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
00dc03d to
888f408
Compare
|
I've tried building this with Same when explicitly passing But I've never done iOS development before, not sure if I set it up correctly? |
|
I've thought through this further. Do you/we need the build flavors? As far as I can tell, they are not necessary. I've got a working build of Android and iOS without the flavors. |
|
I don't think we need flavors. |
|
Alright, I forced pushed a completely different implementation simplifying both iOS. @kolaente and @leschbenedikt what do you think? Does this work for you? No flavors at all.
|
Removes flavor complexity from both platforms. Previously, both iOS and Android required --flavor flags for all builds. Now standard Debug/Release build types handle dev/production differentiation automatically. Changes: - Remove Android productFlavors, use applicationIdSuffix on debug buildType - Remove iOS custom build configurations (Debug-dev, Release-production, etc.) - Use standard Debug/Profile/Release configurations for iOS - Create Debug.xcconfig with dev bundle ID and display name - Update Release.xcconfig and Profile.xcconfig with production settings - Remove default-flavor from pubspec.yaml - Update Makefile, GitHub Actions, and Fastlane (remove --flavor flags) - Fix deprecated flutter format -> dart format in Makefile - Fix deprecated Swift syntax in AppDelegate.swift - Set iOS minimum deployment target to 14.0 Benefits: - `flutter run` just works on both platforms (no flags needed) - Debug builds = dev (bundle ID with .dev suffix) - Release builds = production (standard bundle ID) - Side-by-side installation still works via different bundle IDs - Simpler build system, easier for contributors to understand Usage: flutter run # debug/dev build flutter run --release # release/production build flutter build apk # release APK flutter build ios # release iOS 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
|
I think we've originally introduced the flavours because there was some problem when building without them. As long as it works now I'm fine with removing them. @leschbenedikt what do you think? |
Implements iOS support to enable side-by-side installation of debug and production builds. This allows developers to run both versions on the same device without conflicts.
Removes flavor complexity from both platforms. Previously, both iOS and Android required
--flavorflags for all builds. Now standard Debug/Release build types handle dev/production differentiation automatically.This is an upgrade from #189
Fixes
flutter runon iOS:Changes:
Benefits:
flutter runjust works on both platforms (no flags needed)Usage: