YouTube视频在浏览器中可以正常播放,但在Flutter应用中失败,错误码为152-4

移动开发 2026-07-12

我正在开发一个Flutter应用(已在Android 12和 Android 14上测试)并使用 youtube_player_iframe(或youtube_player_flutter)嵌入YouTube视频。

视频:

  • 在手机的Chrome浏览器上工作完美
  • 设置为 "未公开"
  • 允许嵌入
  • 无年龄限制
  • 无版权声明

然而,在Flutter应用中,视频无法加载并显示:

错误代码:152-4
“本视频不可用。请在YouTube上观看。”

环境:

  • Flutter SDK:3.x
  • Android设备:Moto G60 / Android 12
  • 另一个测试设备:Android 14
  • WebView已更新

示例初始化代码:

YoutubePlayerController(
  initialVideoId: videoId,
  params: const YoutubePlayerParams(
    autoPlay: false,
    showFullscreenButton: true,
  ),
);

问题:

  • 为什么视频在浏览器中可以正常播放,而在Flutter的嵌入式播放器中却失败?
  • 错误代码152-4是否与YouTube的嵌入限制有关?
  • 这是YouTube最近的策略变动吗?
  • 非常感谢任何帮助。

解决方案

在使用 youtube_player_iframe 时,我也遇到了同样的问题。视频在浏览器中可以正常播放,但在Flutter应用中失败,错误为 152-4(“本视频不可用。请在YouTube上观看。”)

在测试了多项因素(WebView更新、视频隐私设置、嵌入权限)后,问题似乎与Flutter WebView内对iframe播放器的处理方式有关。

youtube_player_iframe 切换为 youtube_player_flutter 后,问题立刻解决。

站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。

相关文章