在使用iPad应用程序的CoreMIDI (* are空出应用程序名称)崩溃后,我得到了以下错误:
Dyld Error Message:
Symbol not found: _MIDINetworkNotificationContactsDidChange
Referenced from:
/var/mobile/Applications/8F08B78E-929D-4C5A-9F02-08FD5743C17F/***.app/***
Expected in: /System/Library/Frameworks/CoreMIDI.framework/CoreMIDI
in /var/mobile/Applications/8F08B78E-929D-4C5A-9F02-08FD5743C17F/***.app/***
Dyld Version: 179.4当应用程序启动时,我会使用
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(sessionDidChange:) name:MIDINetworkNotificationSessionDidChange object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(sessionDidChange:) name:MIDINetworkNotificationContactsDidChange object:nil];这似乎是造成坠机的原因。这是在我打电话之后
session = [MIDINetworkSession defaultSession];
session.enabled = YES;
session.connectionPolicy = MIDINetworkConnectionPolicy_Anyone;
MIDIClientCreate(CFSTR("MidiManager"), midiNotifyProc, (void*)self, &midiClientRef);这种类型的CoreMIDI库看起来还没有包含在构建中。问题是,它作为所需的框架包括在构建中。(部署目标设置为4.2)。我可以在我的iPad上运行构建罚款,并且一直在与其他用户的iPads进行广泛的测试,也没有任何问题。此外,这是对一个已有的应用程序的更新,该应用程序已经进行了几次更新,没有任何问题。
我只是双倍地检查了我的部署构建,框架肯定包括在内,我只是将该构建安装到我的iPad (与商店有不同的配置配置文件)上,而且它也运行良好。
会发生什么事?是Xcode为我发送给苹果的那个做了糟糕的构建,还是我遗漏了一些显而易见的东西?我是否可以将MIDINetworkNotificationSessionDidChange通知符号更改为文字字符串(@"MIDINetworkNotificationSessionDidChange"),以修复平均时间内的问题?
谢谢你的帮助!
发布于 2013-07-12 20:32:47
好像这是苹果的事。PGMidi的工作类的.mm在顶部包含了以下内容:
// For some reason, this is not pulled in by the umbrella header
#import <CoreMIDI/MIDINetworkSession.h>发布于 2011-02-18 23:13:54
您记得在您的Info.plist中将最低操作系统要求设置为4.2吗?崩溃报告可能来自iOS早期版本的用户,他们在不应该升级的情况下进行升级。
https://stackoverflow.com/questions/5047453
复制相似问题