Как узнать, истекло ли время для сообщения, отправленного MPMediaPlayer? - PullRequest
0 голосов
/ 03 августа 2009

Я работал с платформой MPMediaPlayer для 3.0 SDK. Иногда медиаплеер реагирует медленно или вообще не отвечает. Я получаю предупреждающие сообщения в консоли, но пользователь никогда не увидит эти сообщения (и, таким образом, обвинит мое приложение в истечении времени ожидания).

Есть ли способ восстановиться после этих таймаутов? Могу ли я установить вещи, чтобы НЕ повторить попытку?

1 Ответ

0 голосов
/ 03 августа 2009

Ваше приложение регистрируется для получения уведомлений от MPMediaPlayer? Я не видел этих таймаутов, поэтому не знаю, возвращают ли они MPMoviePlayerContentPreloadDidFinishNotification с userInfo, заполненным вашей ошибкой.

Из MPMoviePlayerController.h:

MP_EXTERN NSString *const MPMoviePlayerContentPreloadDidFinishNotification; // userInfo contains NSError for @"error" key if preloading fails

Из примера кода MoviePlayer:

// Register to receive a notification that the movie is now in memory and ready to play
[[NSNotificationCenter defaultCenter] addObserver:self 
                 selector:@selector(moviePreloadDidFinish:) 
                 name:MPMoviePlayerContentPreloadDidFinishNotification 
                 object:nil];

// Register to receive a notification when the movie has finished playing. 
[[NSNotificationCenter defaultCenter] addObserver:self 
                selector:@selector(moviePlayBackDidFinish:) 
                name:MPMoviePlayerPlaybackDidFinishNotification 
                object:nil];

// Register to receive a notification when the movie scaling mode has changed. 
[[NSNotificationCenter defaultCenter] addObserver:self 
                selector:@selector(movieScalingModeDidChange:) 
                name:MPMoviePlayerScalingModeDidChangeNotification 
                object:nil];
...