Cocoapods vs Gradle - iOS

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

Однако я также использую Gradle plugin для создания моего приложения.

Теперь возникает вопрос: может ли Gradle выполнять одинаковое управление зависимостями для моих личных файлов и библиотек (.a files) как Cocoapods.

Ответ 1

Краткая история (январь 2015 г.):

  • Gradle: построить систему + управление зависимостями.
  • Cocoapods: управление зависимостями для внутренних построений Xcode.

Скорее всего, для этого (для других, которые хотят начать комментирование), но Cocoapods также могут... "), но для начала, который суммирует его.

Если вы новичок в iOS и/или Xcode, вы, вероятно, не должны использовать смесь Gradle и Xcode, поскольку она добавляет дополнительную сложность в уже сложную среду сборки. Если вы знакомы с Gradle, и вы также (!) Имеете некоторые знания Xcode, тогда я бы рекомендовал использовать Gradle. Преимущество? У вас есть полный контроль над вашими сборками, и это избавляет вас от беспорядка в бесконечных диалоговых окнах build-config Xcode. Наверху вы получаете доступ к другим репозиториям (возможно, это не так интересно), и вы можете script создавать свои сборки в кросс-платформенной среде. Я также использую сервер сборки non-MacOS (Linux + Jenkins), который способен интерпретировать сценарии Gradle -build, что является еще одним плюсом.

Если вам нужен доступ к системе управления версиями, отличной от git, вы также получите доступ к этому... когда я набираю строки прямо здесь, мне интересно, почему я когда-либо создавал приложение без Gradle:-). У меня еще больше вещей, которые мне приходят в голову, теперь я думаю об этом: смешанные сборки на языке программирования (Java/С#/objC...), интеграция с единичным тестированием, которая не требует Xcode, простое повторное использование конфигураций сборки из проект для проекта....

Ответ 2

Cocoapods в значительной степени привязан к Xcode, поскольку он генерирует файлы проекта Xcode. Проблема с Xcode заключается в том, что она лучше всего работает при создании приложения, а не в какой-либо внешней системе сборки. Я предполагаю, что возможно сделать плагин Gradle, который использует репозитории Cocoapods с поддержкой Gradle Objective-C, но я не видел ничего подобного.