在.framework中包含一个.framework是否可能?

我想提一下这个问题包括一个框架到另一个框架,这是可能的吗? 这包括一个iOS框架到另一个 。

也有一个类似于我的目标问题以及, https://stackoverflow.com/questions/23022211/create-framework-including-plcrashreporter-linked-xcodeproj-source-code-to-the 。

我想要达到同样的目的。 不希望开发人员必须链接到这两个框架,但只有与另一个框架合并。

链接中的两个问题都没有答案。 有关该主题的任何更新?

PS我也有源代码,但这不是一个选项,因为它引入了几个问题。

我该怎么做,任何教程,博客,书籍等?

谢谢。

是的,可以在.framework中包含.framework。 我从来没有做过,但我知道coacoapods这样做,旧版本的parsing框架,包括facebookSDK,所以你可以开始研究如何parsing,通过下载旧版本的parsing。

这不回答这个问题,所以我会删除它,当答案发布,但至less你有一个信息,你可以用来做研究,find答案:D

这里尝试使用这个Wenderlich教程做一个静态库。 从那里,你可以开始玩弄设置。 确保你创build的框架在主头文件中有#import语句。 您知道在大多数框架中常见的-Project / Project.h-,因为.h文件具有所有导入语句。

我发现解决scheme创build一个聚合目标,并在构build阶段添加以下运行脚本。

我将这个例子命名为StaticLibraryName的静态库目标名称。

xcodebuild -project "StaticLibraryName.xcodeproj" -configuration "Release" -target "StaticLibraryName" -sdk iphoneos xcodebuild -project "StaticLibraryName.xcodeproj" -configuration "Release" -target "StaticLibraryName" -sdk iphonesimulator mkdir -p "${SRCROOT}/Products/StaticLibraryName.framework" mkdir -p "${SRCROOT}/Products/StaticLibraryName.framework/Versions" mkdir -p "${SRCROOT}/Products/StaticLibraryName.framework/Versions/A" mkdir -p "${SRCROOT}/Products/StaticLibraryName.framework/Versions/A/Resources" mkdir -p "${SRCROOT}/Products/StaticLibraryName.framework/Versions/A/Headers" ln -s "A" "${SRCROOT}/Products/StaticLibraryName.framework/Versions/Current" ln -s "Versions/Current/Headers" "${SRCROOT}/Products/StaticLibraryName.framework/Headers" ln -s "Versions/Current/Resources" "${SRCROOT}/Products/StaticLibraryName.framework/Resources" ln -s "Versions/Current/StaticLibraryName" "${SRCROOT}/Products/StaticLibraryName.framework/StaticLibraryName" cp -R "build/Release-iphoneos/usr/local/include/" "${SRCROOT}/Products/StaticLibraryName.framework/Versions/A/Headers/" lipo -create "build/Release-iphoneos/libStaticLibraryName.a" "build/Release-iphonesimulator/libStaticLibraryName.a" -output "${SRCROOT}/Products/StaticLibraryName.framework/Versions/A/StaticLibraryName" libtool -static -o "${SRCROOT}/Products/StaticLibraryName.framework/Versions/A/TheOtherFrameworkName" "${SRCROOT}/Products/StaticLibraryName.framework/Versions/A/TheOtherFrameworkName" "${SRCROOT}/Vendor/TheOtherFrameworkName.framework/Versions/A/TheOtherFrameworkName"