Я хотел бы добавить GoogleMaps
в мой проект iOS, но я не хочу использовать CocoaPods
. Есть ли способ достичь этого?
GoogleMaps без CocoaPods
Ответ 1
Конечно, есть:
- Немедленный ответ: https://www.gstatic.com/cpdc/0646cf0bd434ed77-GoogleMaps-1.10.1.tar.gz (скачайте и распакуйте его)
Как я это сделал (полезен для любой библиотеки, которая вам нужна)
- Перейдите к нужному блоку: https://cocoapods.org/pods/GoogleMaps
- Нажмите ссылку "See Podspec" ниже Библиотека в правом нижнем углу.
- Вы попадете в podspec.json
- В конце JSON найдите ключ "источник" и используйте url, предоставленный для загрузки SDK.
Если вам нужны инструкции по его установке вручную, вы можете использовать веб-сайт waybackmachine и поместить соответствующий URL-адрес, установив более раннюю дату. Я сэкономлю вам время:
Добавление Google Maps в старый путь:
- Запустите Xcode и откройте существующий проект или создайте новый проект.
- Если вы новичок в iOS, создайте приложение Single View и убедитесь, что включена функция автоматического подсчета ссылок.
- Перетащите пакет GoogleMaps.framework в свой проект. При появлении запроса выберите Копировать пункты в папку группы назначения.
- Щелкните правой кнопкой мыши GoogleMaps.framework в вашем проекте и выберите "Показать In Finder".
- Перетащите файл GoogleMaps.bundle из папки "Ресурсы" в ваш проект. При появлении запроса убедитесь, что Копировать элементы в папку целевой группы не выбрано.
- Выберите проект из Навигатора проектов и выберите цель своего приложения.
- Откройте вкладку "Фазы построения" и в разделе "Связывание двоичных файлов с библиотеками" добавьте следующие структуры:
- AVFoundation.framework
- CoreData.framework
- CoreLocation.framework
- CoreText.framework
- GLKit.framework
- ImageIO.framework
- LibС++. Dylib
- libicucore.dylib
- libz.dylib
- OpenGLES.framework
- QuartzCore.framework
- SystemConfiguration.framework
- Выберите проект, а не конкретную цель, и откройте вкладку "Настройки сборки".
- В разделе Другие флаги компоновщика добавьте
-ObjC
. Если эти параметры не отображаются, измените фильтр на панели "Настройки сборки" с "Базовый" на "Все".
- В разделе Другие флаги компоновщика добавьте
- Наконец, добавьте ключ API в свой AppDelegate.
-
#import <GoogleMaps/GoogleMaps.h>
- Добавьте следующий метод
application:didFinishLaunchingWithOptions:
, заменив API_KEY на свой ключ API.[GMSServices provideAPIKey:@"API_KEY"];
-
#import <GoogleMaps/GoogleMaps.h>
Добавьте к вашему методу application:didFinishLaunchingWithOptions:
следующее, заменив API_KEY
на ваш ключ API.
[GMSServices provideAPIKey:@"API_KEY"];
Ответ 2
-
https://www.gstatic.com/cpdc/aa3052925ceeea2d-GoogleMaps-1.13.2.tar.gz
Скопировать и открыть этот URL. -
Перетащите в свой проект Xcode GoogleMaps.framework.
* выберите Скопировать элементы в папку целевой группы
-
Щелкните правой кнопкой мыши на GoogleMaps.framework -Показать в поиске
-
Внутри папки ресурсов GoogleMaps.bundle перетащите ее в проект (* Не выбирайте элемент копирования).
-
Импортировать несколько FrameWork
- CoreBluetooth.framework
- OpenGLES.framework
- ImageIO.framework
- CoreData.framework
- CoreText.framework
- QuartzCore.framework
- SystemConfiguration.framework
- GLKit.framework
- CoreLocation.framework
- Security.framework
- Accelerate.framework
- LibС++ abi.tbd
- LibС++. 1.tbd
- libc.tbd
- libicucore.tbd
-
Выберите проект, чтобы открыть вкладку "Настройки сборки". В разделе "Другие флаги ссылок" добавьте -ObjC в оба. Снимок экрана с добавлением -ObjC
- импорт
Добавьте в приложение следующее: didFinishLaunchingWithOptions: метод, заменив API_KEY на ваш ключ API. [GMSServices provideAPIKey: @ "api_key" ];
(* get api key https://developers.google.com/maps/documentation/ios-sdk/places#whats_in_the_api_name_ios_places)
Пожалуйста, дайте мне знать любую ошибку, которую вы обнаружили. Он работает для Xcode 7 +, iOS 9 +.