我正在创建一个CocoaPod框架(Pod B),它依赖于另一个CocoaPod框架(Pod A)。 Pod A使用的某些行为和文件位置由预处理器宏控制。有没有办法可以从Pod B提供一些这些宏,以便Pod B的用户不必知道或处理Pod A所需的设置?
我已尝试在XCode中设置其中一些,但似乎构建Pod A不会从XCode中获取任何这些设置。最好不要修改Pod A的.xcconfig,除非它可以作为构建过程或Pod B安装的一部分自动完成。
更新 CocoaPods团队似乎有talked about solving这个问题,但是我无法看到是否有任何工作要做。想知道是否有人试图以其他方式解决这个问题。
我真的更愿意避免在Podfile中使用post_install
的标准机制,因为这需要Pod B的用户进行更改,因此要注意这些设置。
答案 0 :(得分:-1)
您可以接受定义/重新定义Pod B标头中的宏吗?例如,如果Pod A定义了foo
,&你希望它被定义为不同的东西,你可以在Pod_B.h
中添加如下内容:
#ifdef foo
#undef foo
#endif
#define foo bar
当然,你要用Pod B的标题取代Pod_B.h
,& foo
和bar
与宏和&无论你想要什么来定义它们。