Descreva o erro
A cada abertura do player eu imprimi um erro no console assim:
2021-06-30 09:24:44.141532+0200 Media Creations[39379:12785401] [ProcessSuspension] 0x10c4dd0b0 - ProcessAssertion: Failed to acquire RBS MediaPlayback assertion 'WebKit Media Playback' for process with PID 39379, error: Error Domain=RBSAssertionErrorDomain Code=3 "Required client entitlement is missing" UserInfo={RBSAssertionAttribute=<RBSDomainAttribute| domain:"com.apple.webkit" name:"MediaPlayback" sourceEnvironment:"(null)">, NSLocalizedFailureReason=Required client entitlement is missing}
O meu YoutubePlayerController se parece com isso abaixo:
final YoutubePlayerController _controller = YoutubePlayerController(
initialVideoId: videoId,
flags: YoutubePlayerFlags(
enableCaption: false,
hideThumbnail: true,
forceHD: true,
autoPlay: false,
startAt: startAt,
),
);
Reproduzir
Abra o YoutubePlayerFlutter no IOS
Comportamento esperado
Abre o player sem erros
Capturas de tela
Se aplicável, adicione capturas de tela para ajudar a explicar seu problema.
Detalhes técnicos:
Contexto adicional
Aqui está o meu código do YoutubePlayer:
return OrientationBuilder(
builder: (_, __) => YoutubePlayer(
key: UniqueKey(),
showVideoProgressIndicator: true,
onReady: _controller.play,
controller: _controller,
controlsTimeOut: const Duration(seconds: 2),
actionsPadding: const EdgeInsets.only(bottom: 10),
progressIndicatorColor: _theme.primaryColor,
onEnded: (_) => _controller.pause(),
bottomActions: [
Padding(
padding: const EdgeInsets.only(
left: VideoFullScreenButton.paddingSize +
VideoFullScreenButton.size * 2,
right: VideoFullScreenButton.paddingSize,
),
child: CurrentPosition(),
),
ProgressBar(
colors: ProgressBarColors(
playedColor: _theme.primaryColor,
handleColor: _theme.primaryColor,
),
isExpanded: true,
),
GestureDetector(
onTap: () => launch(
Strings.youtubeUrlFromId(
videoId,
seconds: _controller.value.position.inSeconds,
),
),
child: const Padding(
padding: EdgeInsets.only(
left: VideoFullScreenButton.paddingSize,
right: VideoFullScreenButton.paddingSize,
),
child: FaIcon(
FontAwesomeIcons.externalLinkAlt,
color: Colors.white,
size: VideoFullScreenButton.size,
),
),
),
VideoFullScreenButton(
preloadedFullScreen: isFullScreen,
key: UniqueKey(),
onTap: (isFullScreen) => _onVideoFullScreenTap(
isFullScreen,
context,
_controller,
),
),
],
),
);
Está faltando algo no meu projeto? Em caso de perguntas responderei imediatamente.
Eu tenho o mesmo problema
Este aviso se refere ao Info.plist?
@PcolBP você encontrou alguma solução?
Infelizmente não para YoutubePlayerFlutter. Para esse projeto, mudei para YoutubePlayerIframe, pois oferece melhor desempenho em comparação com YoutubePlayerFlutter e nenhum erro está imprimindo desde então.
Comentários muito úteis
Eu tenho o mesmo problema