У меня есть приложение, созданное с использованием Cordova и React.Это приложение передает потоковое видео с нашего веб-сайта.
Пользователь нажимает на ссылку на веб-сайте, которая тесно связана с приложением, которое загружает видео.
Тег видео довольно прост:
<video id="video"
className="video-player"
controls="controls"
controlsList="nodownload"
key={this.state.key}
onError={this.onError}
>
<source src={ videoUrl } type="video/mp4"/>
</video>
Однако в 7 из 10 раз видео не загружается сначала ... затем пользователь должен перейти в другой раздел приложения и затем вернуться к видеопроигрывателю, а затем через несколькоПопытки это работает.
Я проверил URL, и он выглядит нормально, я могу загрузить его в любом веб-браузере.Я попытался отловить ошибку (в обработчике события onError) и затем вызвать forceUpdate
, также попытался изменить state.key
для перезагрузки компонента, и вызов videoElement.load()
также, похоже, не дал никакого эффекта.
Иногда эта ошибка появляется в консоли:
[Error] Failed to load resource: The operation couldn’t be completed. Software caused connection abort (video-name.mp4, line 0)
Что, похоже, связано, однако не появляется каждый раз, когда выходит из строя.
Другой шаблон, который я обнаружил, -кажется, что видео, которые ранее были успешно загружены, всегда загружаются, но у видео, загружаемых впервые, у нас почти всегда есть эта проблема, которая может указывать на какую-то проблему с кешем?.
Я тестирую на iPhone 8, IOS 12.1.2 Но похоже, что ошибка также происходит на Android
Cordova: 8.0.0
Любая идея, что ещеможно попробовать?