2013-08-07 8 views
6

Mam fragment kodu, którego używam w wielu różnych projektach, więc chciałbym zrobić z niego cocoapod i użyć prywatnego repozytorium cocoapod.Jak przekonwertować projekt xcode na cocoapod?

Moje pytanie brzmi: Jak ustawić projekt xcode jako cocoapod? Czy powinna to być biblioteka statyczna lub pusty "projekt" z appdelegate ok? Wygląda na to, że nie chciałbyś mieć appdelegate ani main.m w swoim podziale, ale na pewno ułatwi to uruchamianie i debugowanie.

Dzięki

+0

Dlaczego nie sprawisz, że będzie to kakao? IMHO, w tym "kawałek kodu" jako podprojekt Xcode, którego produktem jest biblioteka lub framework, jest zawsze lepszym rozwiązaniem. – CouchDeveloper

+0

Saszetki kakaowe pozwolą Ci lepiej zarządzać swoimi zależnościami. –

Odpowiedz

6

CocoaPod może być tak proste, jak kilka plików. Wszystko zależy od tego, jak zdefiniujesz to w swoim podspecu. Uwzględniasz tylko odpowiednie pliki kodu źródłowego w swoim podspecu (nr main.m lub cokolwiek, chyba że masz ku temu dobry powód). Moje zalecenie byłoby mieć katalog Source na najwyższym poziomie repo zawierające odpowiednie pliki źródłowe.

Jeśli chcesz mieć projekt demonstracyjny pokazujący, jak go używać, możesz to zrobić na tym samym poziomie i użyć plików z katalogu Source (nie kopiuj ich gdzieś w katalogu projektu demonstracyjnego). Posiadanie rzeczywistego projektu Xcode nie jest wymagane, aby mieć strąk.

Prawdopodobnie musiałby coś bardzo blisko ich demo z bardzo podstawowym 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 

Źródło: http://docs.cocoapods.org/specification.html

A oto repo o osiągalności w tym przykładzie: https://github.com/tonymillion/Reachability

Powiązane problemy