Ошибка при интеграции с сторонней библиотекой youtube-ios-player-helper на iOS
Я пытаюсь воспроизвести видео на YouTube с помощью библиотеки youtube-ios-player-helper, но во время выполнения я сталкиваюсь с ошибкой:
Received error rendering template: Error Domain=NSCocoaErrorDomain Code=258 "The operation couldn't be completed. (Cocoa error 258.)"
Ответы
Ответ 1
В YTPlayerView.m
Edit:
NSString *path = [[NSBundle mainBundle] pathForResource:@"YTPlayerView-iframe-player"
ofType:@"html"
inDirectory:@"Assets"];
To:
NSString *path = [[NSBundle mainBundle] pathForResource:@"YTPlayerView-iframe-player"
ofType:@"html"];
Надеюсь помочь вам!
Ответ 2
Вам нужно скопировать Assets/YTPlayerView-iframe-player.html в основной пакет, чтобы исправить эту проблему.
или, просто вставляемый в комплект, и замените, где приложение начинает искать
/*NSString *path = [[NSBundle mainBundle] pathForResource:@"YTPlayerView-iframe-player"
ofType:@"html"
inDirectory:@"Assets"];*/
NSString *path = [[NSBundle mainBundle] pathForResource:@"YTPlayerView-iframe-player" ofType:@"html"];
Ответ 3
Перетащите
YTPlayerView-IFrame-player.html
YTPlayerView.h
YTPlayerView.m
в вашем проекте.
Добавить заголовок моста и использовать его:
#import "YTPlayerView.h"
Перейдите в файл YTPlayerView.m:
Найти:
NSString *path = [[NSBundle mainBundle] pathForResource:@"YTPlayerView-iframe-player"
ofType:@"html"
inDirectory:@"Assets"];
Изменить на:
NSString *path = [[NSBundle mainBundle] pathForResource:@"YTPlayerView-iframe-player"
ofType:@"html"];
В вашем контроллере просмотра:
использовать:
class ViewController:UIViewController,YTPlayerViewDelegate {
var playerView = YTPlayerView()
извлечь видеоидентификатор и загрузить:
self.playerView.load(withVideoId: videoID)
self.playerView.playVideo()
}
Ответ 4
Вы не указали версию плагина, с которым у вас возникла проблема.
В случае, если это 1,5, здесь обсуждаются ошибки: https://github.com/youtube/youtube-ios-player-helper/issues/160.
Он уже исправлен в master, поэтому, предполагая, что вы используете Cocoapods, вы можете сделать это:
pod 'youtube-ios-player-helper', :git=>'https://github.com/youtube/youtube-ios-player-helper', :commit=>'head'