首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >反应-本机-轨道-播放器崩溃由于exo播放器版本冲突在轨道播放器和反应-本机-视频。

反应-本机-轨道-播放器崩溃由于exo播放器版本冲突在轨道播放器和反应-本机-视频。
EN

Stack Overflow用户
提问于 2022-01-05 04:17:45
回答 2查看 876关注 0票数 3

所以我使用的是本机-视频和反应-本机-轨道-播放器,通常都很好,但是为了使用视频播放器的一些额外功能,比如缓冲,我必须使用Exo播放器,但是手动使用exo播放器会导致反应--本地-跟踪播放器崩溃--我试图得到一个答案,并发现这是由于两个lib使用的exo播放器版本中的冲突而发生的。有人能帮忙吗?

谢谢

EN

回答 2

Stack Overflow用户

发布于 2022-04-28 18:18:37

问题背景

反应-本地-轨道-播放器反应-本机视频都建立在外挂机 (安卓应用程序级媒体播放器)之上。

在当前版本的are本机-轨道-播放器和反应-本机-视频中,以下系外播放器版本被使用:

  • node_modules\react-native-track-player\android\build.gradle react原生轨道播放器(2.1.3): 依赖{ ..。def exoPlayerVersion = safeExtGet("exoPlayerVersion",'2.11.4') .}
  • 本机视频(5.2.0):node_modules\react-native-video\android-exoplayer\build.gradle 依赖{ ..。implementation('com.google.android.exoplayer:exoplayer:2.13.2') {排除组:'com.android.support‘}implementation('com.google.android.exoplayer:extension-okhttp:2.13.2') {排除组:‘com.square up.okhttp 3’,模块:'okhttp‘}.}

正如您所看到的,两者都需要不同版本的系外播放器,这会导致问题(应用程序崩溃)。

解决方案

可用的解决方案是确保两个包都使用相同版本的系外播放器。我们可以通过降低一个包的级别,直到它与另一个的系外播放器版本匹配为止。由于当前版本的react本机-轨道-播放器使用较早版本的系外播放器( 2.11.4 ),我们别无选择,只能降级反应-本机-视频的版本,使用系外播放器2.11.4,即版本5.1.1。

因此,如果将react原生视频降级到5.1.1,问题就会得到解决。

代码语言:javascript
复制
npm i react-native-video@5.1.1

注意:,这可能会导致一些小问题的反应-本机-视频。(例如:textTracks类的Video属性可能无法工作)

票数 3
EN

Stack Overflow用户

发布于 2022-04-13 18:22:17

我知道这个问题是很久以前的事了,但它可能会对某人有帮助,我也有同样的问题,用‘补丁包’解决了。

https://gist.github.com/Fairbrook/53127f8a05c020836a64f6c19b71f889#file-react-native-track-player-2-1-2-patch

使用起来很简单

1-国家预防机制I补丁-包

2-使用名称“修补程序”在项目根目录中创建文件夹

3-创建一个名为“react本机-跟踪播放器+2.1.2修补程序”的文件

4-从链接复制代码并将其粘贴到文件中。

5- npm安装

这应该能解决它,帮我解决它

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70587748

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档