Что такое Cocoapods? Я видел, что многие разработчики используют Pods при разработке приложений для установки API-интерфейсов, но я не понимаю, почему вы не могли просто импортировать файлы вручную. Какова их цель и как они полезны?
Что такое Cocoapods?
Ответ 1
От cocoapods.org:
CocoaPods управляет зависимостями библиотеки для ваших проектов Xcode.
Зависимости для ваших проектов указываются в одном текстовом файле под названием Podfile. CocoaPods разрешит зависимости между библиотеками, извлечет полученный исходный код, а затем свяжет его вместе в рабочем пространстве XCode для построения вашего проекта.
В конечном итоге цель состоит в том, чтобы улучшить возможности обнаружения и вовлечение сторонних библиотек с открытым исходным кодом путем создания более централизованной экосистемы.
Ссылка на проект: ссылка
Спецификации (сторонние инструменты): ссылка
Руководство по началу работы: ссылка
Ответ 2
"CocoaPods - менеджер зависимостей для проектов Cocoa Swift и Objective-C. Он имеет более 30 тысяч библиотек и используется в более чем 1,9 миллиона приложений. CocoaPods может помочь вам элегантно масштабировать ваши проекты". через http://cocoapods.org
По сути, это помогает вам включать сторонние библиотеки, фреймворки в ваш продукт, не беспокоясь о том, как их настроить и настроить ваш проект, что иногда может быть огромной болью.
Относительно того, почему вы не можете просто включить файлы в свой проект?
-
Поскольку они являются сторонними, поэтому вам придется загружать и копировать их в свой проект каждый раз, когда появляется новая версия? Допустим, у вас есть 10 библиотек или фреймворков в вашем проекте, теперь представьте, сколько времени вам понадобится, чтобы проверить, есть ли у кого-нибудь из них какая-либо новая версия, которую вы хотите обновить? и хуже всего, если что-то не работает, вам нужно вернуться к предыдущей версии? Это требует времени и создает неудобства: с
CocoaPods
вы простоCocoaPods
pod update
и обновляете те, которые имеют более новые версии. -
Теперь, если вы хотите v1.1 одной конкретной библиотеки? Насколько легко было бы пролистать историю коммитов Git, чтобы узнать, какой из них вам нужен? С CocoaPods вы просто говорите
pod 'AFrameworkLib', '1.1'
-
Каждая библиотека требует настройки вашего проекта с определенным набором конфигурации, чтобы заставить их работать, делать это для 10 или около того библиотек, а затем исправлять конфликты - это боль сама по себе. С
CocoaPods
позаботились автоматически. -
И последнее, но не менее важное: вы должны включить лицензии для всех сторонних библиотек, которые вы используете, чтобы предоставить кредит первоначальному разработчику этой библиотеки. Представьте себе, что вы копируете 10 лицензионных документов и проверяете их актуальность?
CocoaPod
автоматически создает файл подтверждения в вашем проекте, который вы можете просто включить куда угодно.
Ответ 3
CocoaPods - это инструмент управления зависимостями для проектов Objective-C, аналогичный Maven для Java-проектов, который написан на Ruby и состоит из нескольких Ruby Gems. Идея заключается в том, что после добавления сторонних библиотек в ваш проект вам больше не нужно будет проверять наличие новых версий. CocoaPods справится с этим для вас. Это также упрощает возврат к определенной версии библиотеки. Чтобы использовать его, выполните следующие действия. Более подробную информацию можно найти на официальном веб-сайте http://cocoapods.org
- Запустите следующую команду на вашем Mac
sudo gem установить cocoapods
- Найдите в cocoapods.org нужные библиотеки, а затем создайте текстовый файл с именем Podfile в каталоге проекта Xcode, с такими записями, как
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
pod 'AFNetworking'
pod 'ARAnalytics', '~> 2.7'
Для каждой библиотеки вы можете указать минимальную версию.
- Затем вы запускаете эти команды для запуска всех необходимых компонентов в каталоге вашего проекта
pod setup pod install open YourApp.xcworkspace
Теперь ваш проект готов к работе. Обратите внимание, что последняя команда, описанная выше, открывает YourApp.xcworkspace, а не YourApp.xcodeproj, в противном случае вы получите ошибку "библиотека не найдена -lPods" при сборке приложения.