3

我正在将 Facebook Audience Network 集成到插页式广告和奖励式广告中。

我正在尝试将其集成为框架而不是项目中。

当我尝试通过测试用例对其进行测试时,它在此行之后失败:

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,在那里我可以看到广告并且工作正常。

4

3 回答 3

0

过去也有同样的问题。我将 FBAudienceNetwork 集成为框架中的依赖 pod,唯一可行的解​​决方案是将其手动(拖放)添加到项目中,而不是通过 cocoapods。

于 2020-12-07T15:40:27.440 回答
0

在使用 cocoapods 的情况下,我遇到了同样的问题并找到了解决方案。

在 Podfile 中更改这一行

use_frameworks!

use_frameworks! :linkage => :static

我认为这次崩溃是由具有动态链接的框架错误引起的。

于 2021-03-04T07:38:18.847 回答
0

感谢@sudekon,我也能够解决这个问题。这是唯一对我有用的解决方案。

除了 sudekon 所说的,对于 Unity 开发人员,您可以单击 Assets -> Play Services Resolver (或 External Dependency Manager) -> iOS Resolver -> Settings 并选中“静态链接框架”复选框,然后构建 Xcode 项目。这将使用建议的说明准备 Podfile。

于 2021-03-28T23:32:42.043 回答