Как воспроизвести видео в фоновом режиме с помощью YTPlayer в приложении iOS?

Я получаю следующее сообщение об ошибке...

Завершение работы приложения из-за необработанного исключения «NSInvalidArgumentException», причина: «-[YTPlayerView playerView]: нераспознанный селектор отправлен экземпляру 0x7fd77bd41f80»

и вот мой код..

- (void)applicationDidEnterBackground:(NSNotification *)notification
{   
    [_playerView performSelector:@selector(playerView) withObject:nil afterDelay:0.1];

}

- (IBAction)didTapPlayPause:(id)sender {
    self.btnPlayPause.selected = !self.btnPlayPause.selected;
    if (self.btnPlayPause.selected)
    {
        self.title=self.strngvideotitle;
        self.playerView=[[YTPlayerView alloc]initWithFrame:CGRectMake(0,0,375,290)];
        [self.playerView loadWithVideoId:self.strngvideoId];
        [self.view addSubview:_playerView];

      [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(applicationDidEnterBackground:) name:UIApplicationDidEnterBackgroundNotification object:nil];

   }

person Roby    schedule 22.05.2017    source источник
comment
покажи свой @selector(playerView) код   -  person Anbu.Karthik    schedule 22.05.2017
comment
@ Anbu.Karthik.... Я изменил его, но все равно показывает то же сообщение об ошибке   -  person Roby    schedule 22.05.2017
comment
измените это [_playerView performSelector:@selector(playerView) на [self performSelector:@selector(playerView) и попробуйте один раз   -  person Anbu.Karthik    schedule 22.05.2017
comment
@Roby Anbu запросил код метода playerView, который может быть похож на -(void)playerView{};   -  person Piyush    schedule 22.05.2017
comment
@ Anbu.Karthik.... Я пробовал... все то же сообщение об ошибке...   -  person Roby    schedule 22.05.2017
comment
@Roby - можете ли вы показать свой playerView этот метод, где вы создали   -  person Anbu.Karthik    schedule 22.05.2017


Ответы (1)


Ваш код не работает в этом утверждении

[_playerView performSelector:@selector(playerView) withObject:nil afterDelay:0.1];

Оператор ожидает, что ваш объект _playerView вызовет метод playerView после задержки в 0,1 секунды. Но в классе YTPlayerView нет метода с именем playerView. Возможно, вы захотите проверить фактическое имя метода и заменить его в имени селектора.

person lostInTransit    schedule 22.05.2017
comment
возможно, вы правы, выделите self.playerView=[[YTPlayerView alloc] при запуске didfinish o - person Anbu.Karthik; 22.05.2017
comment
Дело не в этом. Проблема в том, что нет метода с именем playerView. Метод будет называться как-то иначе, например playVideo возможно (github.com/youtube/youtube-ios-player-helper/blob/master/) - person lostInTransit; 22.05.2017