2013-12-15 4 views
8

Ich versuche, eine statische Bibliothek über Cocoapods zu versenden. Ich bekam die Bibliothek ohne irgendwelche Bauanleitungen, jetzt ist es ein Abstecher zu meiner iOS App. Ich muss die Bibliothek nicht für jede Anwendung erstellen, die sie verwendet, sondern lade einfach die lib-Dateien herunter und füge die Header hinzu. Gibt es eine Möglichkeit, dies mit einer Podspec-Datei zu tun?Erstellen podspec, um statische Bibliothek zu versenden

Hier ist, was ich bisher:

Pod::Spec.new do |s| 
    s.name   = "RTMPLib Library" 
    s.version  = "1.0.0" 
    s.summary  = "RTMPLib Library" 
    s.homepage  = "https://github.com/jumper/RTMPLib.git" 
    s.license  = { :type => 'MIT', :file => 'LICENSE' } 
    s.author  = { "jon morehouse" => "[email protected]" } 
    s.source  = { :git => "https://github.com/jumper/RTMPLib.git", :tag => "#{s.version}" } 
    s.platform  = :ios, '7.0' 

    # arc components 
    s.requires_arc = false 
    s.preserve_paths = 'inc/rtmplib/*.h' 
    s.vendored_libraries = 'lib/rtmplib.a' 
    s.libraries = 'rtmplib' 
    s.xcconfig = { 'HEADER_SEARCH_PATHS' => '${PODS_ROOT}/#{s.name}/inc/rtmplib/**'} 
    s.preserve_paths = 'L.framework' 
end 

Die eigentliche Codestruktur kann hier gefunden werden: Git Repo

+0

Dies scheint ein ähnliches Problem: http://stackoverflow.com/questions/14102703/cocoapod-podspec-and-framework – Wilmar

+0

Dein Git Repo Link ist kaputt –

Antwort

3

Sicher ist es möglich, und es ist einfach. Deine Podspec sieht korrekt aus.

Ich denke, Sie sollten ein * .framework erstellen und Ihre Bibliothek und Header-Dateien einfügen, so dass es einfacher zu verwalten ist. Hier ist ein Beispiel podspec für einen Rahmen:

Pod::Spec.new do |s| 
    s.name    = "LibName" 
    s.version   = "0.2.0" 
    s.summary   = "MySummary" 

    s.homepage   = "http://myWebpPage.com/" 

    s.license   = 'MIT' 
    s.author   = { "Author" => "http://author.com/" } 
    s.source   = { :git => "https://github.com/<GITHUB_USERNAME>/Project.git", :tag => s.version.to_s } 

    s.platform  = :ios, '7.0' 
    s.requires_arc = true 
    s.ios.vendored_frameworks = 'StaticLibraryFolder/StaticLibrary.framework' 
    s.frameworks = 'CoreData' , 'SystemConfiguration', 'CoreLocation' 
    s.weak_framework = 'UIKit' 

end 

Wenn Sie nicht mit einer * .framework Datei tun mögen, aber mit * .a und * .h Dateien stattdessen here's ein Beispiel.

1

Ich denke, was Sie tun müssen, wie die demo

Pod::Spec.new do |s| 
s.name   = "RTMPLib Library" 
s.version  = "1.0.0" 
s.summary  = "RTMPLib Library" 
s.homepage  = "https://github.com/jumper/RTMPLib.git" 
s.license  = { :type => 'MIT', :file => 'LICENSE' } 
s.author  = { "jon morehouse" => "[email protected]" } 
s.source  = { :git => "https://github.com/jumper/RTMPLib.git", :tag => "#{s.version}" } 
s.platform  = :ios, '7.0' 

# arc components 
s.requires_arc = false 
# you static library`s .h file 
s.source_files = 'lib/*.h' 
s.vendored_libraries = 'lib/rtmplib.a' 

end