2010-11-10 5 views
6

Esiste un modo per rilevare eccezioni (in particolare per gli errori di rete /nessuna connessione disponibile) quando si utilizza un MPMoviePlayerController?MPMoviePlayerController - rileva errori di rete durante il caricamento di un film

Sono particolarmente preoccupato del fatto che una volta che un'istanza del lettore è stata inizializzata con initWithURL: non si ha modo di sapere se il caricamento del film è fallito per qualche motivo.

Ho rivisto la documentazione disponibile e realizzare posso ottenere una notifica per Loadstate cambia attraverso

moviePlayerLoadStateChanged:(NSNotification*)notification. 

Il problema è che le costanti LoadState disponibili non soddisfare per la gestione degli errori:

MPMovieLoadStateUnknown 
MPMovieLoadStatePlayable 
MPMovieLoadStatePlaythroughOK 
MPMovieLoadStateStalled 

(nel caso ve lo stiate chiedendo, MPMovieLoadStateStalled non viene richiamato durante gli errori di rete per qualche motivo?)

C'è un deprecato MPMoviePlayerContentPreloadDidFinishNotification che fornisce un dizionario utente Info con una chiave "errore" ma nulla per iOS 3.2 e versioni successive.

Qualsiasi aiuto sarebbe molto apprezzato.

risposta

2

Alla fine l'ho ottenuto ordinando sottoscrivendo MPMoviePlayerPlaybackDidFinishNotification e guardando MPMovieFinishReasonPlaybackError.

Maggiori dettagli qui https://developer.apple.com/library/ios/documentation/MediaPlayer/Reference/MPMoviePlayerController_Class/Reference/Reference.html#//apple_ref/doc/uid/TP40006953-CH3-SW17

+0

Ehi, potrebbe aggiungere un codice di esempio? La documentazione della mela manca di esempi e non riesco a capire come fare ciò che mi consiglia. – Lombas

Problemi correlati