Acceso a los videos y videos de iTunes U en el iPad

En mi aplicación, quiero reproducir una vista que se parece exactamente a la aplicación de iPad nativa "Videos" (muestra películas y videos de iTunes U ubicados en el iPad).

No sé cómo acceder a esos elementos en el iPad (películas y iTunes U).

He jugado con todo lo mencionado en la documentation de Apple "Guía de progtwigción de acceso a la biblioteca IPod":

  • MPMediaItem
  • MPMediaPickerController
  • MPMediaQuery
  • MPMoviePlayerController … etc …

Pensé que estaba cerca con MPMediaItem y MPMediaQuery, ya que dos de las banderas parecían prometedoras:

MPMediaTypeMovie = 1 << 8 MPMediaTypeVideoITunesU = 1 << 12

Sin embargo, todos los resultados que obtengo solo incluyen canciones.

¿Estoy usando las classs correctas para acceder a esos artículos? Teniendo en count los resultados que obtengo, parece que esas classs solo pueden acceder a los elementos multimedia que forman parte de la biblioteca del iPod, lo que no estoy seguro es el caso de los videos y los videos de iTunes U.

Sé que esto es posible, porque he visto otra aplicación que accede a ella (se llama "VideoPix"). Presenta la "Biblioteca de video" en una vista Popover, así que al principio sospeché que estaba usando el MPMediaPickerController, porque en el iPad, solo puedes usarlo en un Popover, pero nuevamente, cuando lo probé, todo lo que vi fueron canciones , no hay películas ni artículos de iTunes U 🙁

¡Gracias de antemano!

Fnetworking

Mira el código de ejemplo de AVMovieExporter, está haciendo lo que estás hablando. Todavía no estoy seguro de la reproducción, pero definitivamente los enumera, aunque los DRM no están cooperando tan bien.

Se supone que muestra un ícono para cada película y cuando lo ejecuté, la película comprada (DRM) que tengo vuelve sin miniatura y en la console obtengo:

AVMovieExporter[642:5b17] couldn't generate thumbnail, error:Error Domain=AVFoundationErrorDomain Code=-11836 "Cannot Open" UserInfo=0x1cd9d550 {NSLocalizedDescription=Cannot Open, NSUnderlyingError=0x1e09b5b0 "The operation couldn\342\200\231t be completed. (OSStatus error -12161.)", NSLocalizedFailureReason=This app is not authorized to play this file.} 

Echa un vistazo a ALAsset en AssetsLibrary.framework.

Es un concepto similar de lo que intentas hacer anteriormente, básicamente consultas ALAssetLibrary para activos de types (ALAssetTypePhoto | ALAssetTypeVideo) y prest, tienes una colección que puedes mostrar al usuario.