No se puede insert video de YouTube con YTPlayerView NSCocoaErrorDomain Code = 258

Incrustar videos de YouTube con YTPlayerView no funciona. Solo me da este error en el logging:

2015-12-12 20: 19: 45.229 Wax-room [8545: 3426005] Plantilla de representación de error recibida: Error Domain = NSCocoaErrorDomain Code = 258 "El nombre del file no es válido".

Entonces lo busqué en Google y obviamente tiene algo que ver con "YTPlayerView-iframe-player.html" falta. He intentado todas las ubicaciones sugeridas, pero están equivocadas o estoy haciendo algo mal. La documentation es tan mala en su uso con Swift (2.x), Cocoapods y iOS 9.

https://developers.google.com/youtube/v3/guides/ios_youtube_helper

No hay ninguna carpeta de activos en el pod.

Simplemente tropecé con esto:

El problema es que ya no se copy el file YTPlayerView-iframe-player.html. Volví a 0.1.4 y ahora veo la página html y funciona de nuevo https://github.com/youtube/youtube-ios-player-helper/issues/160

Es un error en la versión 0.1.5, que es lo último. Cambiado a 0.1.4 y funciona ahora. Marque esto: https://github.com/youtube/youtube-ios-player-helper/issues/157

En lugar de retroceder a la versión 0.1.4, puede agregar manualmente el YTPlayerView-iframe-player.html a su proyecto Xcode (o el proyecto / objective Cocoapods), o apuntar Cocoapods en la twig maestra:

 pod 'youtube-ios-player-helper', :git=>'https://github.com/youtube/youtube-ios-player-helper', :commit=>'head' 

Los cambios para Podfile no me ayudaron.

Finalmente lo hice funcionar en estos pasos.

  1. Eliminar youtube-ios-player-helper de Podfile
  2. Ejecutar 'actualización de pod'
  3. Ahora has limpiado el pod para youtube-ios-player-helper. Ahora arrastre YTPlayerView.m, YTPlayerView.h al proyecto y select "copyr files si es necesario". Copie YTPlayerView-iframe-player.html a la carpeta del proyecto y agréguelo al grupo "Archivos de soporte".
  4. En YTPlayerView.m Cambie de esto:

NSString * path = [[NSBundle mainBundle] pathForResource: @ "YTPlayerView-iframe-player" ofType: @ "html" inDirectory: @ "Assets"];

Para: NSString *path = [[NSBundle mainBundle] pathForResource:@"YTPlayerView-iframe-player" ofType:@"html"];

Lo he probado en mis mobilees y funciona bien.

Agregue "Assets.bundle" incluido en la carpeta "youtube-ios-player-helper" (luego de descomprimir la carpeta de proyecto de Git) en su proyecto xcode. Esto arregló el problema para mí.