赞
踩
播放网络视频首先需要添加网络权限,如果是http的链接需要添加明文访问权限
<uses-permission android:name="android.permission.INTERNET" />
xml下添加network_security_config.xml
- <?xml version="1.0" encoding="utf-8"?>
- <network-security-config>
- <!--允许访问http协议-->
- <base-config cleartextTrafficPermitted="true" />
- </network-security-config>
AndroidManifest.xml中的application中引用
android:networkSecurityConfig="@xml/network_security_config"
布局
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:app="http://schemas.android.com/apk/res-auto"
- xmlns:tools="http://schemas.android.com/tools"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:background="@color/colorBlack"
- android:gravity="center"
- android:orientation="vertical">
-
- <VideoView
- android:id="@+id/vv"
- android:layout_width="match_parent"
- android:layout_height="wrap_content" />
- </LinearLayout>
代码
- public class VideoPalyActivity extends AppCompatActivity {
-
- private ActivityVideoPalyBinding binding;
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- binding = ActivityVideoPalyBinding.inflate(getLayoutInflater());
- setContentView(binding.getRoot());
-
- initView();
- initData();
- }
-
- private void initView() {
- YUtils.showLoading("正在加载,请稍等...");
-
- String url = "http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4";
- binding.vv.setVideoURI(Uri.parse(url));
- MediaController mediaController = new MediaController(this);
- binding.vv.setMediaController(mediaController);
- binding.vv.start();
- }
-
- private void initData() {
- //加载成功回调
- binding.vv.setOnPreparedListener(mp -> YUtils.hideLoading());
- }
-
- @Override
- protected void onDestroy() {
- super.onDestroy();
- //停止播放并关闭资源
- binding.vv.stopPlayback();
- }
- }

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。