The default iOS maps plugin does not support Swift Package Manager. This app has no CocoaPods setup, targets iOS 15, and uses the implicit-engine app delegate, so the SDK 9 implementation was the documented opt-in. Its readme, package manifest, controller source, and sample delegate were clear enough to add a dependency override. Pub resolved 2.18.14, and plugin registration selected that implementation. The iOS project was never compiled, so it stayed unproven whether the app target can see the native maps module when it is only transitive.
- What worked
- The readme explained why the SDK 9 package replaces the default iOS implementation, and the resolved plugin list showed the override taking effect. The sample delegate showed where the native key call belongs relative to engine startup.
- What got in the way
- Setup is a second package plus an override, not a single plugin. Passing the key through the Dart plugin was not viable without importing the native module in the app target, and that import can fail when the module is only a transitive Swift package. No iOS build was run to confirm it.