Настроить проект Xcode

После включения биллинга и создания ключа API вы готовы настроить проект Xcode, который вы используете для разработки своего приложения.

Примечания к выпуску доступны для каждого выпуска.

Шаг 1: Установите необходимое программное обеспечение.

Чтобы создать проект с использованием Navigation SDK для iOS, необходимо загрузить и установить:

  • Xcode версии 15.0 или более поздней

Шаг 2: Создайте проект Xcode и установите Navigation SDK

Менеджер пакетов Swift

Navigation SDK можно установить через Swift Package Manager . Чтобы добавить SDK, убедитесь, что вы удалили все существующие зависимости Navigation SDK.

Чтобы добавить SDK в новый или существующий проект, выполните следующие действия:

  1. Откройте project или workspace Xcode, затем перейдите в Файл > Добавить зависимости пакета .
  2. Введите https://github.com/googlemaps/ios-navigation-sdk в качестве URL-адреса, нажмите Enter , чтобы загрузить пакет, и нажмите «Добавить пакет».
  3. Чтобы установить определенную version , установите поле Dependency Rule на один из вариантов на основе версии. Для новых проектов мы рекомендуем указать последнюю версию и использовать параметр "Exact Version". После завершения нажмите "Add Package".

Чтобы обновить package для существующего проекта, выполните следующие действия:

  1. Чтобы проверить установку, перейдите в раздел «Зависимости пакетов» в Project Navigator, чтобы проверить пакет и его версию.

Чтобы удалить существующий Navigation SDK для iOS, установленный вручную, выполните следующие действия:
  1. В настройках конфигурации проекта Xcode найдите Frameworks, Libraries, and Embedded Content . Используйте знак минус (-) , чтобы удалить следующий фреймворк:
    • GoogleMaps.xcframework
    • GoogleNavigation.xcframework
  2. Из каталога верхнего уровня вашего проекта Xcode удалите пакет GoogleMaps .

Ручная установка

В этом руководстве показано, как вручную добавить XCFrameworks, содержащий Navigation SDK для iOS, и Maps SDK для iOS в ваш проект и настроить параметры сборки в Xcode. XCFramework — это бинарный пакет, который можно использовать на нескольких платформах, включая машины с чипсетом M1

Чтобы установить XCFrameworks для Navigation SDK для iOS и Maps SDK для iOS, выполните следующие действия:

  1. Загрузите следующие двоичные файлы SDK и файлы ресурсов:
  2. Запустите Xcode и либо откройте существующий проект, либо создайте новый. Если вы новичок в iOS, создайте новый проект и выберите шаблон iOS App .
  3. Удалите из проекта все существующие ссылки на карты, навигацию и места.
  4. Перетащите следующие XCFrameworks в свой проект в разделы Frameworks, Libraries и Embedded Content , чтобы установить SDK карт и навигации (при появлении соответствующего запроса выберите Copy items, если необходимо ):
    • GoogleMaps.xcframework
    • GoogleNavigation.xcframework
  5. Перетащите GoogleMaps.bundle из GoogleMapsResources, который вы скачали, в каталог верхнего уровня вашего проекта Xcode. При появлении запроса убедитесь, что выбран параметр Копировать элементы, если необходимо .
  6. Перетащите GoogleNavigation.bundle из GoogleNavigationResources, который вы скачали, в каталог верхнего уровня вашего проекта Xcode. При появлении запроса убедитесь, что выбран параметр Копировать элементы в папку целевой группы .
  7. Выберите свой проект в Навигаторе проектов и укажите цель вашего приложения.
  8. Откройте вкладку «Фазы сборки» и в разделе «Связать двоичный файл с библиотеками» добавьте следующие фреймворки и библиотеки:
    • Accelerate.framework
    • AudioToolbox.framework
    • AVFoundation.framework
    • Contacts.framework
    • CoreData.framework
    • CoreGraphics.framework
    • CoreImage.framework
    • CoreLocation.framework
    • CoreTelephony.framework
    • CoreText.framework
    • GLKit.framework
    • ImageIO.framework
    • libc++.tbd
    • libxml2.tbd
    • libz.tbd
    • Metal.framework
    • OpenGLES.framework
    • QuartzCore.framework
    • Security.framework
    • SystemConfiguration.framework
    • UIKit.framework
    • UserNotifications.framework
    • WebKit.framework
  9. В целевом объекте вашего приложения выберите вкладку Возможности , включите Фоновые режимы и включите следующие режимы:
    • Аудио, AirPlay и «картинка в картинке»
    • Обновления местоположения
  10. Выберите свой проект, а не конкретную цель, и откройте вкладку Build Settings . В разделе Other Linker Flags добавьте ‑ObjC для debug и release . Если эти настройки не видны, измените фильтр в панели Build Settings с Basic на All .
  11. Откройте Info.plist и добавьте следующие пары ключ-значение:
    • Ключ: NSLocationWhenInUseUsageDescription ( Конфиденциальность - Местоположение Когда используется Описание использования )
      Значение: «Этому приложению требуется разрешение на использование вашего местоположения для пошаговой навигации».
    • Ключ: NSLocationAlwaysAndWhenInUseUsageDescription ( Конфиденциальность - Местоположение всегда и когда используется Описание использования )
      Значение: «Этому приложению требуется разрешение на использование вашего местоположения для пошаговой навигации».

CocoaPods

Navigation SDK для iOS доступен как pod CocoaPods . CocoaPods — это менеджер зависимостей с открытым исходным кодом для проектов Swift и Objective-C Cocoa.

Если у вас еще нет инструмента CocoaPods, установите его на macOS, выполнив следующую команду из терминала. Подробности см. в руководстве по началу работы с CocoaPods .

sudo gem install cocoapods

Создайте Podfile для Navigation SDK для iOS и используйте его для установки API и его зависимостей:

  1. Если у вас еще нет проекта Xcode, создайте его сейчас и сохраните на локальном компьютере. Если вы новичок в разработке iOS:
    1. Создайте новый проект.
    2. Выберите iOS > Шаблон приложения .
    3. На экране параметров проекта:
      1. Введите название проекта .
      2. Запишите значение поля Bundle identifier . Вы можете использовать это значение для ограничения вашего API-ключа ниже.
      3. Установите для интерфейса проекта значение Storyboard .
      4. Установите язык Swift или Objective-C .
  2. Создайте файл с именем Podfile в каталоге вашего проекта. Этот файл определяет зависимости вашего проекта.
  3. Отредактируйте Podfile и добавьте свои зависимости вместе с их версиями . Вот пример, который включает зависимость, необходимую для Navigation SDK для iOS: # Cocoapods install reference #
    source 'https://github.com/CocoaPods/Specs.git'
    
    platform :ios, '15.0'
    
    target 'YOUR_APPLICATION_TARGET_NAME_HERE' do
      pod 'GoogleNavigation', '10.0.0'
    end
            
    Обязательно регулярно запускайте pod outdated для обнаружения новых версий. При необходимости обновитесь до последней версии .
  4. Сохраните Podfile .
  5. Откройте терминал и перейдите в каталог, содержащий Podfile :

    cd <path-to-project>
  6. Запустите команду pod install . Это установит API, указанные в Podfile , вместе со всеми зависимостями.

    pod install
  7. Закройте Xcode, а затем откройте (двойным щелчком) файл .xcworkspace вашего проекта, чтобы запустить Xcode. С этого момента и далее для открытия проекта необходимо использовать файл .xcworkspace .

Чтобы обновить API для существующего проекта, выполните следующие действия:

  1. Откройте терминал и перейдите в каталог проекта, содержащий Podfile .
  2. Запустите команду pod update . Это обновит все API, указанные в Podfile , до последней версии.

Шаг 3: Добавьте свой ключ API в проект

В следующих примерах показано, как добавить ключ API в ваш проект в Xcode:

Быстрый

Добавьте свой ключ API в AppDelegate.swift следующим образом:

  1. Добавьте следующие операторы импорта:
    import GoogleMaps
    import GoogleNavigation
  2. Добавьте следующее в метод application(_:didFinishLaunchingWithOptions:) :
    GMSServices.provideAPIKey("YOUR_API_KEY")

Objective-C

Добавьте свой ключ API в AppDelegate.m следующим образом:

  1. Добавьте следующие операторы импорта:
    @import GoogleMaps;
    @import GoogleNavigation;
  2. Добавьте следующее в application:didFinishLaunchingWithOptions:
    [GMSServices provideAPIKey:@"YOUR_API_KEY"];

Шаг 4 (необязательно): проверьте файл Apple Privacy Manifest

Apple требует сведения о конфиденциальности приложений для приложений в App Store. Посетите страницу сведений о конфиденциальности Apple App Store для получения обновлений и дополнительной информации.

Файл манифеста конфиденциальности Apple включен в пакет ресурсов для SDK. Чтобы убедиться, что файл манифеста конфиденциальности включен, и проверить его содержимое, создайте архив вашего приложения и сгенерируйте отчет о конфиденциальности из архива.

Если вы являетесь клиентом Mobility Services

Если вы являетесь клиентом Mobility Services, узнайте о выставлении счетов в документации Mobility. Для получения дополнительной информации о регистрации транзакций см. раздел Настройка выставления счетов . Чтобы узнать, как добавить идентификаторы транзакций в реализацию Navigation SDK, см. раздел Связывание использования сервисов с транзакциями Mobility .

Что дальше?

Теперь, когда у вас есть ключ API и проект Xcode, вы можете создавать и запускать приложения. Navigation SDK для iOS предоставляет руководства, которые помогут вам начать работу. Для получения более подробной информации см.: