AVAudioSession AudioSessionSetProperty устарела в iOS 7, как обновить коды?

Как изменить следующую строку на код, совместимый с iOS 7?

UInt32 doChangeDefaultRoute = 1;
AudioSessionSetProperty(kAudioSessionProperty_AudioRoute, sizeof(doChangeDefaultRoute), &doChangeDefaultRoute);

kAudioSessionProperty_AudioRoute использовался до iOS 5. В iOS 5-6 это должно быть kAudioSessionProperty_AudioRouteDescription, но оно доступно только для чтения. Кажется, это свойство установлено неправильно, но странно, но оно не вызывает ошибки после того, как я обновил цель развертывания iOS до iOS 7.


person newguy    schedule 18.04.2014    source источник
comment
stackoverflow.com/questions/19650585/   -  person KudoCC    schedule 18.04.2014
comment
Спасибо, но этот пример выглядит очень громоздким. Нет ли более простого способа сделать то же самое?   -  person newguy    schedule 18.04.2014


Ответы (1)


Используйте [AVAudioSession sharedInstance] вместо AudioSessionSetProperty для получения дополнительной информации, которую вы можете найти в Google. существует так много постов, относящихся к этому.

person Gajendra Rawat    schedule 18.04.2014
comment
Я использую AVAudioSession, я просто не знаю, как изменить конкретную строку. Я не смог найти никакой информации о том, как изменить эту строку, не затрагивая существующие функции. Если вы можете найти эти ссылки, вы можете опубликовать их здесь, пожалуйста? - person newguy; 18.04.2014
comment
stackoverflow.com/questions/18807157/ проверьте это - person Gajendra Rawat; 18.04.2014
comment
Это не совсем то, что мне нужно. Согласно AudioRoute, iOS 6 имеет никак не справиться с такой ситуацией. Ссылка, размещенная KudoCC, похоже, работает в iOS 7, но слишком громоздка. Я решил удалить код, так как в данный момент он не влияет на мой проект. - person newguy; 18.04.2014