Приложение AudioStreamerDelegate - PullRequest
0 голосов
/ 12 декабря 2010

У меня есть две вещи, касающиеся AudioStreamer, и я надеюсь, что у меня есть некоторые подсказки:

1. Я настроил UITabBarController и в моем Appdelegate есть AudioStreamer -объект. Два представления относятся к appDelegate.streamer. Похоже, что я получаю две сессии, когда я выпускаю и выделяю его новым. У меня два прохода аудиосессии.

2. Я использую UITableView для воспроизведения из этого списка. в didSelectRowAtIndexPath -методе я инициализирую с помощью URL. когда пользователь нажимает быстрый двойной или тройной щелчок. аудиосессия будет начата три раза. хотя я использую bool, чтобы предотвратить это. таким образом, мое грязное решение состоит в том, чтобы заставить систему спать на секунду. это ужасно, потому что экран завис на секунду.

Благодарю за подсказки

Simon

Ответы [ 2 ]

0 голосов
/ 23 сентября 2011

для 2-й точки. Это ошибка класса AudioStreamer. Также это было решено, и код установлен на gitHub, см. Ссылку . также, если это не работает, вы можете перейти к методу паузы и добавить больше состояний, как показано ниже

-(void)pause
{
    if (state==AS_PLAYING || state==AS_BUFFERING || state==AS_WAITING_FOR_DATA)
    {
       //rest code goes same....
    }
    // rest code goes same....
}

это решило мою проблему. Надеюсь, это поможет вам также ...

0 голосов
/ 12 декабря 2010

С точки зрения ваших проблем, это звучит так, как будто вы должны реализовать AudioSteamer как одноэлементный, поскольку это предотвратит создание нескольких экземпляров и предоставит единую точку для управления воспроизведением (то есть: предотвратит одновременное воспроизведение нескольких нажатий несколькими нажатиями).

Для получения дополнительной информации о том, как создать синглтон-класс, см. Раздел «Создание экземпляра синглтона» в Apple Руководство по основам какао .

...