创建podspec以运送静态库

Jon*_*use 9 objective-c static-libraries .a ios cocoapods

我正试图通过cocoapods运送静态库.我的图书馆没有任何构建方向,现在它已经下载到我的iOS应用程序.我不需要为每个使用它的应用程序构建库,而只需下载lib文件并包含头文件.有没有办法用podspec文件执行此操作?

这是我到目前为止所拥有的:

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" => "jon@jumperapp.com" }
  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
Run Code Online (Sandbox Code Playgroud)

实际的代码结构可以在这里找到:Git Repo

mic*_*rus 4

当然这是可能的,而且很容易。您的 podspec 看起来正确。

我认为你应该创建一个 *.framework 并将你的库和头文件放在里面,这样更容易管理。以下是框架的 podspec 示例:

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
Run Code Online (Sandbox Code Playgroud)

如果您不想使用 *.framework 文件,而是使用 *.a 和 *.h 文件,请参阅以下示例。