gpt4 book ai didi

ios7 : adding iAd. 项目框架导致 SIGABRT 运行

转载 作者:行者123 更新时间:2023-11-29 12:47:31 26 4
gpt4 key购买 nike

我有一个项目运行良好。我想在其中加入广告并制作免费版本。我复制了该项目,将其重命名并添加了 iAd.framework。但它已导致 SIGABRT 运行。

调试没有解释任何东西......它在从根 VC 的 viewDidLoad 方法设置一些 VC 属性时崩溃。我认为这不相关,但如果您不这么认为,可以提供详细信息。

链接iAd有什么技巧吗?提前感谢您的帮助!

编辑:添加了日志和一些说明

2014-04-25 16:04:04.249 MyAppTEST[686:60b] -[MPViewController setSoundName:]: unrecognized selector sent to instance 0x16e43a30

2014-04-25 16:04:04.252 MyAppTEST[686:60b] * Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[MPViewController setSoundName:]: unrecognized selector sent to instance 0x16e43a30'

它提示无法识别的选择器(准确地说是属性 setter )。但是除了链接 iAd.framework 之外,我没有做任何更改。如果我删除这个框架,它会再次开始正常工作。

经过更多的追踪,我发现,使用 iAd 框架,[self.storyboard instantiateViewControllerWithIdentifier:@"MPPageContentController"]; 返回一个不正确类型的 View Controller ,但不是 nil !

MPViewController *pageContentViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"MPPageContentController"];
if ([pageContentViewController isKindOfClass:[MPViewController class]]) {
NSLog(@"OK");
}

删除iAd.framework则测试通过,否则失败!有什么建议吗?

编辑2:这是一个真正的故障!我已将测试更新如下:

    MPViewController *pageContentViewController = (MPViewController*)[self.storyboard instantiateViewControllerWithIdentifier:@"MPPageContentController"];
if ([pageContentViewController isKindOfClass:[MPViewController class]]) {
NSLog(@"OK");
} else {
NSLog(@"%@", [pageContentViewController description]);
}

并且,如果将 iAd 添加到项目中,控制台中会记录以下内容:"MPViewController: 0xa63fd30 "

而且我确实在 Debug模式下的“变量 View ”面板中看到了必需的 MPViewController 属性,尽管它们声称无法识别......它变得越来越奇怪,但我已经没有前进的想法了!有帮助吗?

最佳答案

您的应用程序崩溃的原因是 Apple 有一个名为 MPViewController 的类,如您所见 here .

更改 ViewController 的类名可以解决此问题。

我假设 iAd 在内部使用此类来展示广告。编译器决定使用 Apple 类而不是您的类,因此您得到了 does not respond to selector 异常,因为 Apple 的 MPViewController 没有响应该选择器。


您可以看到,遵循 Cocoa 命名约定并为您的类添加 3 字母前缀是个好主意。我现在找不到引用,但我记得他们说(或说)2 个字母前缀是为 Apple 类保留的。

关于ios7 : adding iAd. 项目框架导致 SIGABRT 运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23288551/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com