Objective-C / iOS - 是否可以将私有框架编译到另一个私有框架中?

时间:2017-03-16 20:41:54

标签: ios objective-c frameworks

有几个朋友在objective-c中创建了一些私有框架,我想创建自己的私有框架,使用他们发送给我的私有框架作为他们的包装器。这可能吗?我想将我的框架交给其他人,他们不知道他们正在使用其他框架,因为我采用了不同框架之间的所有共性,以便更容易执行某些操作。

Framework A
   action 1 
   action 2

Framework B 
   action 1 
   action 2

 My framework 
   action 1 chooses to use action 1 from either 
   framework provided by the data passed into the method
   action 2 chooses to use action 2 from either 
   framework provided by the data passed into the method

1 个答案:

答案 0 :(得分:0)

所以,我发现这是代码签名问题。使用MyFramework的应用程序会抛出错误,因为它不会对嵌套框架进行签名。为此,您必须告诉使用MyFramework的应用程序通过运行shell脚本在构建阶段对嵌套框架进行编码:

pushd ${TARGET_BUILD_DIR}/${PRODUCT_NAME}.app/Frameworks/MyFramework.framework/Frameworks
for EACH in *.framework; do
   echo "-- signing ${EACH}"
   /usr/bin/codesign --force --deep --sign 
"${EXPANDED_CODE_SIGN_IDENTITY}" --entitlements 
"${TARGET_TEMP_DIR}/${PRODUCT_NAME}.app.xcent" --timestamp=none $EACH
done
popd