CocoaPods / Podspec和* .framework

CocoaPods问题:

我已经创建了一个与内部静态库捆绑在一起的框架,具体取决于AFNetworking和资源包(基于这两个教程来创建FWKs http://www.blackjaguarstudios.com/blog/programming/2012/11/22/xcode- 45-creating-ios-framework-and-hold-my-hand-im-3-years-old和https://github.com/bclubb/iOS-Framework )

我想创建一个podspec,以便人们只需在他们的Podfile中添加一行,如果需要,可以在pod安装时添加我的框架和AFNetworking。

这可能吗?

我实际上在办公室做了很多。 我们有大量的私有源代码可以重复使用。 CocoaPods帮助更快地启动新项目,并使它们更容易更新。

虽然可以将您的框架添加到podspec,但我发现通过CocoaPods传递静态库和头文件要容易得多,而不是担心框架。

您必须根据项目更新podspec,但以下是重要部分:

s.source_files = 'StaticLib/Headers/*.h' s.preserve_paths = 'StaticLib/libYourLibrary.a' s.library = 'YourLibrary' s.xcconfig = { 'LIBRARY_SEARCH_PATHS' => '$(PODS_ROOT)/ProjectFolder/LibraryFolder' } s.dependency = 'AFNetworking' 

这将复制您的静态库,并将您的pod带入AFNetworking。 这将使您的静态库更小(不必构建它)并加快用户导入pod的速度。

如果你必须使用框架,上面相同的东西仍然适用,但你可能需要稍微调整一下。 无论如何,所有框架都是静态lib和头文件的漂亮文件夹结构,所以为什么要烦恼额外的东西。 无论如何,源仍然都内置在lPods.a静态库中。 希望这可以帮助你。

实际上,您现在可以使用Cocoapods创建自己的libxxx.a或xxxx.framework。 Cocoapods将关注通用二进制和公共标题等细节。 请检查: https : //guides.cocoapods.org/making/using-pod-lib-create.html和http://blog.cocoapods.org/Pod-Authors-Guide-to-CocoaPods-Frameworks/