gpt4 book ai didi

delegates - Cocos2D 2.1 : "Delegate" deprecated in iOS 6. 如何设置这个 AVAudioSession 的委托(delegate)?

转载 作者:行者123 更新时间:2023-12-03 22:55:37 27 4
gpt4 key购买 nike

在 Xcode 4.5 中启动了 Cocos2D 2.1 模板(没有物理引擎),针对 iOS 6 和 iPad。在 CDAudioManager.m 文件中,以下代码...

AVAudioSession* session = [AVAudioSession sharedInstance];
session.delegate = self; // Which is what is automatically generated by the template.

...生成以下警告...
"delegate deprecated:  first deprecated in iOS 6"

所以我去苹果开发者文档,它在“委托(delegate)”下说,“在 iOS 6.0 中已弃用。请改用此类的通知部分中描述的通知。”

http://developer.apple.com/library/ios/#documentation/AVFoundation/Reference/AVAudioSession_ClassReference/DeprecationAppendix/AppendixADeprecatedAPI.html#//apple_ref/occ/instp/AVAudioSession/delegate

问题是,在我看来,我们正在尝试做的所有事情——请原谅我的经验不足——将 AVAudioSession 的委托(delegate)设置为 CDAudioManager 实例本身。通知是如何做到这一点的?或者我对上述代码的目标是错误的?

最佳答案

您遇到的错误在此代码块中

AVAudioSession* session = [AVAudioSession sharedInstance];
session.delegate = self;// <-------- DEPRECATED IN IOS 6.0

要使警告静音,请将这两行更改为:
[[AVAudioSession sharedInstance] setActive:YES error:nil];

希望这可以帮助。

关于delegates - Cocos2D 2.1 : "Delegate" deprecated in iOS 6. 如何设置这个 AVAudioSession 的委托(delegate)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13078901/

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