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

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

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

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

Для создания проекта с использованием Places SDK для iOS вам необходимо:

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

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

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

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

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

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

    Если вы обновляете Google Places Swift с устаревшего URL-адреса GitHub

    Важно: URL-адрес GitHub для доступа к Google Places Swift изменился, начиная с версии 0.3.0. Если вы обновляете версию GooglePlacesSwift, доступ к которой осуществлялся через старый URL-адрес, https://github.com/googlemaps/ios-places-swift-sdk , удалите его из раздела зависимостей пакетов Xcode.

  5. Чтобы проверить установку, перейдите на панель General вашего целевого объекта. В разделе Frameworks, Libraries, and Embedded Content вы должны увидеть установленные пакеты. Вы также можете просмотреть раздел Package Dependencies в Project Navigator , чтобы проверить пакет и его версию.

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

  1. В Xcode перейдите в «Файл > Пакеты > Обновить до последних версий пакетов».

    Если вы обновляете Google Places Swift с устаревшего URL-адреса GitHub

    Важно: URL-адрес GitHub для доступа к Google Places Swift изменился, начиная с версии 0.3.0. Если вы обновляете версию GooglePlacesSwift, доступ к которой осуществлялся через старый URL-адрес, https://github.com/googlemaps/ios-places-swift-sdk , удалите его из раздела зависимостей пакетов Xcode.

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

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

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

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

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

  1. Загрузите следующие двоичные файлы и файлы ресурсов SDK:
  2. Если вы устанавливаете Places Swift SDK для iOS, установите следующие файлы:
  3. Извлеките файлы для доступа к XCFramework и ресурсам.
  4. Запустите Xcode и либо откройте существующий проект, либо создайте новый. Если вы новичок в разработке iOS, создайте новый проект и выберите шаблон iOS App .
  5. Удалите из вашего проекта все пакеты карт из предыдущих выпусков.
  6. Откройте вкладку General . Перетащите следующий XCFramework в свой проект в раздел Frameworks, Libraries, and Embedded Content . Убедитесь, что выбран параметр Do Not Embed :
    • GooglePlaces.xcframework
    Если вы устанавливаете Places Swift SDK, перетащите следующий XCFramework в свой проект в раздел Frameworks, Libraries, and Embedded Content . Обязательно выберите Do Not Embed :
    • GooglePlacesSwift.xcframework
  7. Скопируйте GooglePlaces.bundle из GooglePlacesResources , который вы скачали, в каталог верхнего уровня вашего проекта Xcode. Обязательно выберите Копировать элементы в папку целевой группы при появлении соответствующего запроса.

    Если вы устанавливаете Places Swift SDK, скопируйте GooglePlacesSwift.bundle из GooglePlacesSwiftResources , который вы скачали, в каталог верхнего уровня вашего проекта Xcode. Обязательно выберите Копировать элементы в папку целевой группы при появлении соответствующего запроса.
  8. Выберите свой проект в Навигаторе проектов и укажите цель вашего приложения.
  9. Откройте вкладку Build Phases . В Link Binary with Libraries добавьте следующие фреймворки и библиотеки:
    • CoreGraphics.framework
    • CoreLocation.framework
    • libc++.tbd
    • libz.tbd
    • QuartzCore.framework
    • UIKit.framework
  10. Выберите свой проект, а не конкретную цель, и откройте вкладку Build Settings . В разделе Linking - General -> Other Linker Flags добавьте -ObjC к "Debug" и "Release". Если эти настройки не видны, измените фильтр в панели Build Settings с Basic на All .

CocoaPods

Places SDK для iOS и Places Swift SDK для iOS доступны в виде модулей CocoaPod , GooglePlaces и GooglePlacesSwift .

CocoaPods — это менеджер зависимостей с открытым исходным кодом для проектов Cocoa на Swift и Objective-C. Если у вас еще нет инструмента CocoaPods, установите его на macOS, выполнив следующую команду из терминала. Подробности см. в руководстве CocoaPods Getting Started .

sudo gem install cocoapods

Создайте Podfile для установки SDK и их зависимостей:

  1. Если у вас еще нет проекта Xcode, создайте его сейчас и сохраните на локальном компьютере. Если вы новичок в разработке iOS, создайте новый проект и выберите шаблон iOS App .
  2. Создайте файл с именем Podfile в каталоге вашего проекта. Этот файл определяет зависимости вашего проекта.
  3. Отредактируйте Podfile и добавьте свои зависимости вместе с их версиями . Вот пример, который указывает имя цели вашего приложения и имена модулей GooglePlaces и GooglePlacesSwift :
    source 'https://github.com/CocoaPods/Specs.git'
    
    platform :ios, '16.0'
    
    target 'YOUR_APPLICATION_TARGET_NAME_HERE' do
      pod 'GooglePlaces', '10.0.0'
      pod 'GooglePlacesSwift', '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 в свое приложение.

В следующих примерах замените YOUR_API_KEY на свой ключ API.

GooglePlacesSwift

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

  • Добавьте следующий оператор импорта:
    import GooglePlacesSwift
  • Добавьте следующее в метод application(_:didFinishLaunchingWithOptions:) , заменив YOUR_API_KEY на ваш ключ API:
    PlacesClient.provideAPIKey("YOUR_API_KEY")

Быстрый

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

  • Добавьте следующий оператор импорта:
    import GooglePlaces
  • Добавьте следующее в метод application(_:didFinishLaunchingWithOptions:) , заменив YOUR_API_KEY на ваш ключ API:
    GMSPlacesClient.provideAPIKey("YOUR_API_KEY")

Objective-C

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

  • Добавьте следующий оператор импорта:
    @import GooglePlaces;
  • Добавьте следующее в application:didFinishLaunchingWithOptions: заменив YOUR_API_KEY на ваш ключ API:
    [GMSPlacesClient provideAPIKey:@"YOUR_API_KEY"];

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

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

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

Следующие шаги