#ios #swift #google-maps #google-maps-sdk-ios
#iOS #swift #google-карты #google-maps-sdk-ios
Вопрос:
В настоящее время AppDelegate вызывает статический метод, который предоставляет ключ API для GMSServices. Ключ правильный, и сам метод возвращает true .
GMSServices.provideAPIKey(ConfigUtils.GoogleMaps.Key)
Несмотря на это, когда я пытаюсь открыть карту, ошибка
Exception NSException * "Google Maps SDK for iOS must be initialized via [GMSServices provideAPIKey:...] prior to use" 0x000060000383c8d0
происходит в приложении.
Есть ли что-нибудь еще, что мне нужно сделать, чтобы заставить GoogleMaps работать должным образом?
Я нашел это в другом вопросе:
Это может произойти, если часть вашего кода Google Maps запускается до инициализации ключа API.
но перед инициализацией ключа API нет никакого кода Google Maps.
Комментарии:
1. Можете ли вы показать свой код AppDelegate?
Ответ №1:
Для работы API Google Maps в вашем приложении не должно быть ничего другого. Если ссылка на ваш ключ API верна, возможно, вы вызываете provideAPIKey()
в неправильном месте в вашем AppDelegate.
Вы точно вызываете provideAPIKey()
правильную функцию в своем AppDelegate? Он должен вызываться внутри didFinishLaunchingWithOptions
функции, вот так.
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
// Provide the API Key to allow the app to use Google Maps here.
GMSServices.provideAPIKey(ConfigUtils.GoogleMaps.Key)
return true
}