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/