2013-08-07 2 views
6

У меня есть часть кода, которую я нахожу, что я повторно использую несколько проектов, поэтому я хотел бы сделать это cocoapod и использовать частный репозиторий cocoapod.Как преобразовать проект xcode в cocoapod?

Мой вопрос: Как настроить проект xcode как cocoapod? Должна ли быть статическая библиотека или пустой «проект» с appdelegate ок? Кажется, что вам не нужен appdelegate или main.m в вашем контейнере, но он уверен, что его легче запускать и отлаживать.

Благодаря

+0

Почему вы не сделали это CocoaPod? ИМХО, в том числе, что «кусок кода» в качестве подпроекта Xcode, чей продукт является библиотекой или каркасом, всегда является лучшим подходом. – CouchDeveloper

+0

Cocoa pods позволит вам лучше управлять своими зависимостями. –

ответ

6

CocoaPod может быть столь же просто, как несколько файлов. Все зависит от того, как вы определяете его в своем подспепе. Вы включаете только соответствующие файлы исходного кода в свой podspec (нет main.m или что-то еще, если у вас нет повода для этого). Моя рекомендация состояла бы в том, чтобы иметь каталог Source на верхнем уровне вашего репо, содержащий соответствующие исходные файлы.

Если вы хотите, чтобы демонстрационный проект показывал, как его использовать, вы можете сделать это на том же уровне и использовать файлы из каталога Source (не копируйте их где-нибудь в каталоге демонстрационного проекта). Имея фактический проект Xcode, не требуется наличие контейнера.

Вы бы, наверное, что-то очень близко их демо из очень простой podspec:

Pod::Spec.new do |s| 
    s.name   = 'Reachability' 
    s.version  = '3.1.0' 
    s.license  = :type => 'BSD' 
    s.homepage  = 'https://github.com/tonymillion/Reachability' 
    s.authors  = 'Tony Million' => '[email protected]' 
    s.summary  = 'ARC and GCD Compatible Reachability Class for iOS and OS X. Drop in replacement for Apple Reachability.' 
    s.source  = :git => 'https://github.com/tonymillion/Reachability.git', :tag => 'v3.1.0' 
    s.source_files = 'Reachability.h,m' 
    s.framework = 'SystemConfiguration' 
    s.requires_arc = true 
end 

Источник: http://docs.cocoapods.org/specification.html

А вот репо для достижимости в этом примере: https://github.com/tonymillion/Reachability

Смежные вопросы