Как правильно настроить проект для Cocoa Pods?

В некоторых из моих прошлых проектов Cocoa Pods не были настроены правильно, и это приводило к нежелательным вещам, таким как необходимость дублирования проектов Cocoa Pod в Project Navigator или необходимость возврата файлов pod в систему управления версиями.

Как правильно установить Cocoa Pods и убедиться, что моя структура каталогов и структуры Project Navigator настроены правильно?


person Senseful    schedule 15.03.2014    source источник


Ответы (2)


Лучший способ использовать Cocoa Pods — следовать официальному примеру.

Это состоит из нескольких шагов.

Настройка Cocoa Pods в первый раз

1. Установите Cocoa Pods на свой компьютер.

Начните с Руководства по началу работы, чтобы установить Cocoa Pods на свой компьютер.

2. Создайте подфайл.

Не создавайте Podfile в Xcode, так как он не должен быть частью вашего проекта!

Создайте файл в своем любимом текстовом редакторе и сохраните его на том же уровне, что и ваш файл .xcodeproj.

Пример содержимого подфайла:

pod 'CupertinoYankee', '~> 1.0'

3. Запустите установку модуля

Перейдите в каталог вашего подфайла в терминале и запустите pod install.

4. Откройте сгенерированное рабочее пространство

Как только вы запустите pod install, вы увидите сообщение, например:

[!] Отныне используйте MyProject.xcworkspace.

Закройте проект Xcode и откройте сгенерированный файл .xcworkspace.

Понимание изменений

Всегда полезно знать, какие изменения были внесены в ваш проект на случай, если что-то пойдет не так.

1. Структура каталогов

Вы должны были начать с такой структуры, как:

введите здесь описание изображения

... затем вручную добавил подфайл:

введите здесь описание изображения

После запуска pod install ваша структура каталогов теперь выглядит так:

введите здесь описание изображения

Обратите внимание, что единственными новыми объектами являются:

  • MyProject.xcрабочая область
  • Подфайл.lock
  • стручки

2. Навигатор проекта

В Xcode вы начали с этого:

введите здесь описание изображения

... и закончилось этим в новой рабочей области:

введите здесь описание изображения

Для справки, вот расширенный взгляд на новую структуру каталогов:

введите здесь описание изображения

Очевидно, что проект Pods был добавлен в навигатор проектов, но есть еще несколько ключевых моментов, на которые стоит обратить внимание:

Обратите внимание, что Podfile находится в корне папки MyProject в Finder, но находится внутри проекта Pods в навигаторе проектов Xcode.

Аналогично, обратите внимание, как Pods.xcconfig находится внутри папки Pods в Finder, но находится внутри MyProject в навигаторе проекта Xcode.

3. Конфигурации

Это те же скриншоты, что и раньше:

В Xcode вы начали с этого:

введите здесь описание изображения

... и закончилось этим в новой рабочей области:

введите здесь описание изображения

Обратите внимание, что в разделе «Конфигурации» для цели «Мой проект» теперь указано Pods.

Это важно, потому что в противном случае PODS_ROOT не будет настроен должным образом (среди прочего), и при сборке вы получите ошибки.

4. Добавлен PODS_ROOT

Настройки сборки вашей цели пошли от этого: (Примечание: это прокручивается полностью вниз)

введите здесь описание изображения

... к этому:

введите здесь описание изображения

Обратите внимание, как PODS_ROOT был добавлен в качестве пользовательской настройки.

Примечание. Эта часть конфигурации иногда дает сбои при переустановке модулей, поэтому вам может потребоваться закрыть и открыть проект Xcode. починить это.

5. Другие изменения

Вы можете увидеть полный список изменений здесь.


person Senseful    schedule 15.03.2014
comment
Возможно, это уже есть, но этот обзор лучше, чем то, что я нашел на официальном сайте .. спасибо за время, потраченное на публикацию этого. Вы помогаете многим в этом. - person drew..; 11.10.2014
comment
Очень хороший, подробный ответ. Я хочу добавить какао-бобы в существующий проект. Но так и не смог найти хорошую ссылку :-( - person Juned Ahsan; 09.12.2014

В моем случае: в моем проекте SwiftLint было добавлено Build Phasees -> SwiftLint, как показано ниже. SwiftLint Структура моей корневой папки была Volume/Project Files/iOS Project Files/Office Projects/project-name. Как вы можете видеть, в моей структуре каталогов было место, SwiftLint, выполненный на этапе сборки, создал проблему для этого пространства и показал ошибку no directory found. После изменения каталога высокого уровня путем переименования, как на изображении ниже, моя проблема была решена Каталог проекта после переименования

person Md. Sulayman    schedule 15.02.2019