音频单元 V3 扩展:Swift 对比 Objective-C
Audio Unit V3 Extensions: Swift vs. Objective-C
我想使用新的 AU Extentions v3 框架为 iOS 创建音频单元扩展。 Apple 提供的文档和示例代码很少,并且仅以 Swift 格式提供。
这是否意味着只能使用 Swift 创建 AU 扩展,或者理论上也可以使用 Objective-C?换句话说:当我尝试将示例代码移植到 Objective-C 时,我 运行 会不会被阻塞?
我在 WWDC 2015 (session 508) session 的理解是 Objective-C 实际上是音频单元扩展的推荐语言。这是因为 Swift ABI 尚未稳定,因此如果您使用 Swift 的一个版本构建扩展,并且它托管在使用不同 Swift 版本构建的应用程序中,您会 运行 出问题。
This thread 更详细地讨论了 Swift ABI。
更新:我回去搜索asciiwwdc.com找到了我想的评论(这是来自session 508 of 2015 WWDC):
So if you are going to build a framework to be loaded in process on OS X, despite what we are doing here with Swift, we can't recommend that you do this on OS X because the Swift API is subject to change.
(我很确定他说的是 ABI,但有人将其转录为 API。)
我想使用新的 AU Extentions v3 框架为 iOS 创建音频单元扩展。 Apple 提供的文档和示例代码很少,并且仅以 Swift 格式提供。
这是否意味着只能使用 Swift 创建 AU 扩展,或者理论上也可以使用 Objective-C?换句话说:当我尝试将示例代码移植到 Objective-C 时,我 运行 会不会被阻塞?
我在 WWDC 2015 (session 508) session 的理解是 Objective-C 实际上是音频单元扩展的推荐语言。这是因为 Swift ABI 尚未稳定,因此如果您使用 Swift 的一个版本构建扩展,并且它托管在使用不同 Swift 版本构建的应用程序中,您会 运行 出问题。
This thread 更详细地讨论了 Swift ABI。
更新:我回去搜索asciiwwdc.com找到了我想的评论(这是来自session 508 of 2015 WWDC):
So if you are going to build a framework to be loaded in process on OS X, despite what we are doing here with Swift, we can't recommend that you do this on OS X because the Swift API is subject to change.
(我很确定他说的是 ABI,但有人将其转录为 API。)