1.xm文件

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.zmsoft.TestTool.activity.ZhiboActivity"> <RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"> <VideoView android:id="@+id/videoView"
android:layout_width="match_parent"
android:layout_height="match_parent"
/> </RelativeLayout> </RelativeLayout>

  2.写一个类集成  AppCompatActivity

package com.zmsoft.TestTool.activity;

import android.media.MediaPlayer;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.widget.MediaController;
import android.widget.Toast;
import android.widget.VideoView; import com.zmsoft.TestTool.R;
import com.zmsoft.TestTool.utils.Utils; /**
* Created by hanbao0928 on 2018/3/30.
*/ public class ZhiboActivity extends AppCompatActivity { private VideoView videoView ;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState); setContentView(R.layout.receice_log); //本地的视频 需要在手机SD卡根目录添加一个 fl1234.mp4 视频
String videoUrl1 = Environment.getExternalStorageDirectory().getPath()+"/fl1234.mp4" ; //网络视频
String videoUrl2 = Utils.videoUrl ; Uri uri = Uri.parse( videoUrl2 ); videoView = (VideoView)this.findViewById(R.id.videoView ); //设置视频控制器
videoView.setMediaController(new MediaController(this)); //播放完成回调
videoView.setOnCompletionListener( new MyPlayerOnCompletionListener()); //设置视频路径
videoView.setVideoURI(uri); //开始播放视频
videoView.start();
} class MyPlayerOnCompletionListener implements MediaPlayer.OnCompletionListener { @Override
public void onCompletion(MediaPlayer mp) {
Toast.makeText( ZhiboActivity.this, "播放完成了", Toast.LENGTH_SHORT).show();
}
}
}

  3.写一个 Utils  类用于存放网络视频链接地址

package com.zmsoft.TestTool.utils;

/**
* Created by hanbao0928 on 2018/3/30.
*/ public class Utils { // public static final String videoUrl = "http://www.pps.tv/w_19rqylpzsh.mp4" ;
public static final String videoUrl = "http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4" ;
//public static final String videoUrl = "http://gslb.miaopai.com/stream/ed5HCfnhovu3tyIQAiv60Q__.mp4" ;
}

  以上则是一个简单的 Android  VideoView 实现本地及其网路视频播放完整Demo,如有疑问请留言,谢谢 !!!

Android使用VideoView播放本地视频及网络视频Demo的更多相关文章

  1. android中VideoView播放sd卡上面的视频

    (1)videoView组件只支持MP4和3gp格式的视屏播放,如果想播放其它视屏格式的文件,还得开发能够播放的视屏播放器 (2)videoView组件功能比较单一,如果想开发功能丰富的播放器,还得重 ...

  2. Android 视频播放器 VideoView 的使用,播放本地视频 和 网络 视频

    1.布局文件 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:and ...

  3. Android使用VideoView播放网络视频

    Android支持播放网络上的视频.在播放网络上的视频时,牵涉到视频流的传输,往往有两种协议,一种是HTTP,一种是RTSP.这 两种协议最大的不同是,HTTP协议,不支持实时流媒体的播放,而RTSP ...

  4. Android 使用意图播放本地视频

    Android播放视频的方式有三种: 一.使用意图播放,调用本地安装的播放器,选择一个进行播放. 二.使用VideoView播放(VideoView事实上是对MediaPlayer的封装,使用起来非常 ...

  5. android采用videoView播放视频(包装)

    //android播放视频.用法:于androidManifest.xml添加activity, // <activity android:name=".PlayVideo" ...

  6. Android - 标准VideoView播放演示样例

    标准VideoView播放演示样例 本文地址: http://blog.csdn.net/caroline_wendy 在Android SDK中的ApiDemos内, 提供标准播放视频的代码,使用V ...

  7. Android开发 MediaPlayer播放本地视频完善的demo(只是代码记录)

    xml <?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.w ...

  8. 实战深度学习OpenCV(二):读取并播放本地或者摄像头的视频

    一.读取并播放的代码如下: #include "pch.h" #include <iostream> #include <opencv2/core/core.hp ...

  9. Android利用Mediapalyer播放本地资源文件声音

    首先在res下创建raw,然后将mp3音乐拷贝到raw下 直接贴代码吧 //开始播放声音 public class PlayVoice { private static MediaPlayer med ...

随机推荐

  1. jquery ligerUI中ligerComboBox 初始值问题

    ligerComboBox项目中运用总结内容如下: $("#selectId").ligerComboBox({ data: proData, initValue: 0});这就默 ...

  2. 利用pyusb来查询当前所以usb设备

    具体代码如下 #!/usr/bin/python# -*- coding:utf-8 -*- import sys import usb.core # find USB devices dev = u ...

  3. 交叉编译zookeeper的C库

    原创文章,转载请正确注明本文原始URL及作者. 今天要编译一个zookeeper的C接口,要编译一个TK1版本. 事情经过这这样的:原来用的是zookeeper-3.4.6版本,但是源码中有个函数是汇 ...

  4. C# 类库调试 启动外部程序无法调试

    无法调试进程 test.exe [17936] 中的某些代码.请参阅下面的状态信息. IntelliTrace 代码失败(0x80131534).    Managed (v4.6.v4.5.v4.0 ...

  5. delphi’线程新技术 并行计算

    TParallel TInterLocked 并行库中的TTask http://docwiki.embarcadero.com/Libraries/Berlin/en/System.Threadin ...

  6. WPF 自定义鼠标光标

    在程序中使用自定义鼠标光标的三种方式: RadioButton senderButton = sender as RadioButton; 方式一:                       str ...

  7. day03-数据类型

    数据类型 一.介绍 存储引擎决定了表的类型,而表内存放的数据也要有不同的类型,每种数据类型都有自己的宽度,但宽度是可选的 mysql常用数据类型概括:#1. 数字: 整型:tinyint.int.bi ...

  8. inno setup 安装前判断进程是否存在,以及停止相应进程<转>

    打包的时候遇到了这样的需求:假似用户都是傻瓜                  式操作,如果更新安装程序的时候,之前的老程序还在运行这个时候如果你去提示让用户吧老程序手动退掉也不现实. 所以当遇到这种 ...

  9. js 定义一个对象并且给对象赋值方法

    var  obj={}; obj.a="12"; obj.b="13" var o ={}; o.jsonObj=obj; 取得属性值直接用 obj.a; ob ...

  10. css样式表2

    <head> <style type="text/css"> .main { height:42px; width:100%; text-align:cen ...