13

所以我试图将AudioToolbox与RubyMotion一起使用,

1、新增

app.frameworks << 'AudioToolbox'

在 Rakefile 中,

2,在我的一个简单的视图控制器方法中,简单地添加了

p AudioFileID

3,然后耙,

4,给定一个错误,

uninitialized constant RecorderViewController::AudioFileID (NameError)

显然AudioToolbox中的AudioFileID没有加载,我在CoreAudio中尝试了类似的东西,效果很好。我需要要求什么吗?任何想法?谢谢。

4

2 回答 2

0

我认为将 AudioToolbox 添加到您的框架可能正在加载工具包,除非您在构建过程中看到错误。你不需要其他任何东西。

我有一个 RubyMotion 程序,它调用 AudioToolbox 函数,AudioFileOpenURL并且AudioFileGetProperty没有错误。由于 AudioFileID 是一个结构,我不认为它被定义为使用的裸常量。如果您在使用 AudioToolbox 功能时遇到错误,请更新此问题或开始一个新问题。

于 2013-04-10T00:11:02.970 回答
0

我在 RubyMotion 错误跟踪器上创建了一张票,并自己解决了这个问题 3 天,这就是我发现的

(/Library/RubyMotion/data/ios/6.1/BridgeSupport/AudioToolbox.bridgesupport)在即将发布的 RubyMotion 版本中修复此问题之前,您必须为每个目标 iOS 版本修补 AudioToolbox.bridgesupport

替换此行 <cftype type='^{OpaqueAudioFileID=}' name='AudioFileID'/>

<opaque type='^{OpaqueAudioFileID=}' name='AudioFileID'/>

这样RubyMotion不会将AudioFileID视为在某处定义的结构(因此未初始化的常量错误),您将能够通过调用实例化指向 AudioFileID 的指针Pointer.new AudioFileID.type

于 2013-05-30T12:22:18.550 回答