我正在整合Facebook受众网络,用于初始和奖励类型的广告。
我试着把它作为一个框架来集成,而不是在项目中。
当我试图通过测试用例测试它时,它在这一行之后失败了:
self.fbInterstitialAd = [[FBInterstitialAd alloc] initWithPlacementID:self.placementID];
并给我这个错误:
*** Terminating app due to uncaught exception 'FBFinalClassViolationException', reason: 'FBAdConfigManager is a final class and cannot be subclassed. FBAdConfigManager' ***
我真的不明白它为什么会崩溃。我真的不知道问题出在哪里。我还在单独的单视图应用程序中集成了这个Audience网络SDK,在那里我可以看到AD并正常工作。
我遇到了同样的问题,并在使用椰子的情况下找到了解决方案。
更改Podfile 中的这一行
use_frameworks!
至
use_frameworks! :linkage => :static
我认为这次崩溃是由具有动态链接的框架错误引起的。
多亏了@suekon,我也解决了这个问题。这是唯一对我有效的解决方案。
除了sudekon所说的,对于Unity开发人员,您可以单击Assets->播放服务解析程序(或外部依赖关系管理器(->iOS解析程序->设置并选中复选框;静态链接框架";然后构建Xcode项目。这将准备带有建议说明的Podfile。
过去也有同样的问题。我将FBAudienceNetwork作为一个依赖pod集成到一个框架中,唯一可行的解决方案是手动(拖放(将其添加到项目中,而不是通过cocoapods。