Videoview URL не работает, но работает в WebView Android
У меня есть одна проблема Видео MP4 URL работа в WebView, но я взял VideoView внутри не работает всплывающее сообщение URL "Извините, этот URL не работает". В чем конкретно проблема, которую я не знаю? Вы знаете такое решение, тогда, пожалуйста, помогите мне. И поделитесь своим большим опытом. Благодарю вас!
3 ответа
Это как-то связано с вашей ссылкой и контентом. Попробуйте следующие две ссылки: String path="http://www.ted.com/talks/download/video/8584/talk/761"; String path1="http://commonsware.com/misc/test2.3gp";
Uri uri=Uri.parse(path1);
VideoView video=(VideoView)findViewById(R.id.VideoView01);
video.setVideoURI(uri);
video.start();
Начните с "path1", это небольшой легкий поток видео, а затем попробуйте "path", это более высокое разрешение, чем "path1", идеальное высокое разрешение для мобильного телефона.
Похоже, работают только безопасные URL (developers.google.com/training/images/tacoma_narrows.mp4
использует HTTPS в то время как "kuiber.com/images/stories/1557736976-9002.mp4
использовать HTTP)
Согласно документам
Начиная с Android 9 (уровень API 28), поддержка открытого текста по умолчанию отключена.
Поэтому вы должны установить свойство android:usesCleartextTraffic
в true
android:usesCleartextTraffic
Указывает, намерено ли приложение использовать сетевой трафик в виде открытого текста, например HTTP в виде открытого текста. Значением по умолчанию для приложений с целевым уровнем API 27 или ниже является "true". Приложения с таргетингом на уровень API 28 или выше по умолчанию имеют значение "false"
Чтобы решить проблему, используйте android:usesCleartextTraffic="true"
внутри application tag
в вашем манифесте
<application
...
android:usesCleartextTraffic="true"
...>
...
</application>
Это как-то связано с вашей ссылкой и контентом. Попробуйте следующие две ссылки:
String path="http://www.ted.com/talks/download/video/8584/talk/761";
String path1="http://commonsware.com/misc/test2.3gp";
Uri uri=Uri.parse(path1);
VideoView video=(VideoView)findViewById(R.id.VideoView01);
video.setVideoURI(uri);
video.start();
Начните с , это небольшой легкий видеопоток, а затем попробуйте
path
, это более высокое разрешение, чем
path1
, идеальное высокое разрешение для мобильного телефона.