2012-10-16 15 views
6

Stworzyłem własną kapsułę CocoaPods, aby używać jej w aplikacjach wewnętrznie. Ta kapsuła powinna również używać danych podstawowych. Dodałem mój plik xy.xcdatamodeld do moich plików źródłowych, ale nie jest on wkompilowany w folder xy.momd.Własny plik CocoaPods Pod Core Data nie może być dostępny

Czy muszę ustawić jakieś inne właściwości w mojej kapsule, aby uzyskać podstawowe dane?

Mój obecny plik pod:

Pod::Spec.new do |s| 
s.name   = "Test" 
s.version  = "1.0" 
s.summary  = "..." 
s.homepage  = "..." 
s.license  = 'MIT (example)' 
s.author  = { "Felix Krause" => "[email protected]" } 
s.source  = { :git => "http://EXAMPLE/Example.podspec.git", :tag => "0.0.1" } 
s.platform  = :ios, '6.0' 
s.source_files = 'TS/Classes/**/*.{h,m}', 'TS/Views/**/*.{h,m}', 'TS/TSResources/**/*.{json,xcdatamodeld}' 
s.resources = "TS/TSResources/**/*" 
s.frameworks = 'CoreData', 'QuartzCore', 'Accounts', 'MessageUI', 'CoreLocation', 'CoreGraphics', 'MobileCoreServices', 'SystemConfiguration' 
s.requires_arc = true 
s.ios.xcconfig = { 'HEADER_SEARCH_PATHS' => '$(PODS_ROOT)/../../TS/**' } 
s.ios.xcconfig ={ 'FRAMEWORK_SEARCH_PATHS' => '"$(PODS_ROOT)/../.." "$(PODS_ROOT)/.." "$(SRCROOT)/.."' } 
s.xcconfig = { 'OTHER_LDFLAGS' => '-all_load' } 
s.dependency 'JSONKit' 
end 
+0

Czy masz szansę na zaakceptowanie odpowiedzi? –

+0

@DanielGalasko To pytanie jest naprawdę stare i wtedy nie było oficjalnego sposobu, aby to zrobić. Przyjąłem twoją odpowiedź, ponieważ wydaje się najlepszym rozwiązaniem tego problemu. – KrauseFx

+0

Tak, wiem :) po prostu naprzykrzam się, gdy nowi użytkownicy pytają o to samo –

Odpowiedz

9

Tak więc mogę wrócić do tego, to jest faktycznie obsługiwane. Wszystko, co musisz zrobić, to upewnić się, że twój strąk pod spodem zawiera listę zasobów .xcdatamodeld. Coś z tego powodu:

Pod::Spec.new do |s| 
    s.name = "MyPod" 
    s.version = "0.1" 
    s.platform = :ios, '8.0' 
    s.requires_arc = true 

    s.public_header_files = 'Pod/Classes/**/*.h' 
    s.source_files = 'Pod/Classes/**/*{h,m}' 
    s.resources = 'Pod/Classes/CoreData/*.xcdatamodeld' 
    s.frameworks = 'CoreData' 
end 
2

Obecnie nie ma wyraźne poparcie dla tego produktu. Here to przykład tego, jak możesz to zrobić. Zauważ jednak, że ten kod nie został przetestowany, ale powinien być czymś podobnym. Ten konkretny użytkownik przeniósł definicję modelu do kodu, na końcu btw.

HTH

0

nie jestem bardzo dobry w Ruby, więc nie rozumiem przykład stopu za. Po prostu upewnij się, że xcdatamodeld jest dołączony jako plik źródłowy, a następnie zrób odniesienie w moim projekcie do tego pliku źródłowego w katalogu Pods.

Ścieżka kończy się na czymś podobnym do '../Pods/[PathToMyPod]/[MyDataModel].xcdatamodeld'.

To trochę hack, ale łatwo wykonuje pracę.

Powiązane problemy