我正在参与一个客户购买的项目。该项目是 Fluxstore。使用 Flutter 构建的电子商务。
我可以在 Android 中运行该项目(模拟器和设备=)。但iOS无法运行。我收到以下错误:
Launching lib/main.dart on iPhone 11 in debug mode...
Running pod install...
Running Xcode build...
Xcode build done. 138,6s
Failed to build iOS app
Could not build the application for the simulator.
Error launching application on iPhone 11.
Error output from Xcode build:
↳
** BUILD FAILED **
Xcode's output:
↳
/Users/user./projects/project/ios/Runner/AppDelegate.swift:3:8: error: no such module 'GoogleMaps'
import GoogleMaps
^
note: Using new build system
note: Building targets in parallel
note: Planning build
note: Constructing build description
我在互联网上查找了此问题的解决方案,但没有任何效果。有人可以帮我吗?
删除所有 pod 文件。运行
flutter clean
。然后转到 iOS 文件夹并运行 pod init
。它创建一个 pod 文件。在 pod 'GoogleMaps'
之前添加
target 'Runner' do
这行
我分享我的 pod 文件代码
# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'
pod 'Firebase/Analytics'
pod 'GoogleMaps'
# add pods for any other desired Firebase products
# https://firebase.google.com/docs/ios/setup#available-pods
target 'Runner' do
# Comment the next line if you don't want to use dynamic frameworks
# Comment the next line if you don't want to use dynamic frameworks
use_frameworks!
# Pods for Runner
end
flutter pub get
cd ios
pod install
pod update
您是否检查过 pubspec.yaml 项目是否仍然使用 google_maps?因为如果没有,那么您应该删除
AppDelegate.swift
中的两行。 (导入 google_maps 和 GMSServices.provideAPIKey
。
这应该可以解决问题。
这个问题是因为你在xcode中打开了错误的目录下的项目。如果正确打开并尝试一下,问题就解决了。
注意:适用于 Flutter 项目。
确保在 appdelgate.swift 中导入谷歌地图
import UIKit
import Flutter
import GoogleMaps //This line
@UIApplicationMain
@objc class AppDelegate: FlutterAppDelegate {
override func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
GMSServices.provideAPIKey("MAP API KEY")
GeneratedPluginRegistrant.register(with: self)
return super.application(application, didFinishLaunchingWithOptions: launchOptions)
}
}
检查您是否在 Xcode 中打开
Runner.xcworkspace
而不是 Runner.xcodeproj