我将 openAL 框架添加到我的应用程序中,并且我正在使用演示 CrashLanding 中的声音引擎。它在模拟器上工作得很好,但是当我为我的设备构建它时,我得到了错误。看起来没有添加框架。我试过:重新启动 xcode;删除框架并重新添加;清洁目标;重新启动计算机。它仍然可以在模拟器上运行,但设备设置甚至无法编译。有没有人有任何其他想法或者我做错了什么?
这是一个更具体的错误,现在有 17 个:
“_alSourcePlay”,引用自:
SoundEngine.o 中的 SoundEngineEffect::PlaybackProc(void*)
SoundEngine.o 中的 SoundEngineEffect::Start()
此外,CrashLanding 在我的设备上运行良好。
最佳答案
删除您添加的 OpenAL 框架。
转到项目中的其他框架之一,例如 UIKit,右键单击并“在 finder 中显示”。
将您在 Finder 窗口中找到的 OpenAL 拖到 Frameworks 下的 XCode 中。
现在它可能会工作......有时当你说“添加现有框架”时它似乎选择了错误的目录,你可能正在添加 OS X OpenAL 框架(这对模拟器来说很好)。
关于使用 openAL 的 iPhone 应用程序可以在模拟器中运行,但不能在设备上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/688480/