1、布局文件

<?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"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="app.com.myapplication.LocalVideoActivity">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="200dp">
<VideoView
android:id="@+id/videoView"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
</RelativeLayout>
</RelativeLayout>

2、代码部分

package app.com.myapplication;
import android.media.MediaPlayer;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.support.v7.app.AppCompatActivity;
import android.widget.MediaController;
import android.widget.Toast;
import android.widget.VideoView;
public class LocalVideoActivity extends AppCompatActivity {
private VideoView videoView ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_local_video);
//本地的视频  需要在手机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( LocalVideoActivity.this, "播放完成了", Toast.LENGTH_SHORT).show();
}
}
}
package app.com.myapplication;
/**
* Created by ${zyj} on 2016/4/19.
*/
public class Utils {
public static final String videoUrl = "http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4" ;
}

3、效果展示

Android 视频播放器 VideoView 的使用,播放本地视频 和 网络 视频相关推荐

  1. android 播放视频链接,如何通过Android视频播放器中的直接链接播放MP4视频?

    我正在制作一个 Android应用程序,我需要通过直接下载链接在Android默认本机视频播放器中播放mp4视频. 要打开Android视频播放器,我使用以下代码 Intent intent = ne ...

  2. Android 视频播放器 (二):使用MediaPlayer播放视频

    在 Android 视频播放器 (一):使用VideoView播放视频 我们讲了一下如何使用VideoView播放视频,了解了基本的播放器的一些知识和内容.也知道VideoView内部封装的就是Med ...

  3. android播放器国内外现状,RockPlayer:全球最好的Android视频播放器?

    RockPlayer是一款Android上的视频播放器,用来播放存储在手机本地的视频,支持几乎所有的视频格式.RockPlayer由中国北京的一家创业团队开发,他们刚刚推出了新版本应用,开始支持And ...

  4. Android视频播放之VideoView

    Android视频播放之VideoView 1.VideoView类介绍 Android的VideoView组件可以从不同的来源(例如资源文件或内容提供器)读取图像,计算和维护视频的画面尺寸以使其适用 ...

  5. MediaPlayer+TextureView,完美切换全屏、小窗口的 Android 视频播放器

    NiceVieoPlayer 项目地址:xiaoyanger0825/NiceVieoPlayer  简介:MediaPlayer+TextureView,完美切换全屏.小窗口的 Android 视频 ...

  6. 音视频播放器与 H.265 播放探索

    一.简介 简单来说,H.265 标准围绕着视频编码标准 H.264,保留原来的某些技术,同时对一些相关的技术加以改进. 改进点包括:提高压缩效率.提高鲁棒性和错误恢复能力.减少实时的时延.减少信道获取 ...

  7. 基于NDK、C++、FFmpeg的android视频播放器开发实战-夏曹俊-专题视频课程

    基于NDK.C++.FFmpeg的android视频播放器开发实战-1796人已学习 课程介绍         课程包含了对流媒体(拉流)的播放,演示了播放rtmp的香港卫视,支持rtsp摄像头和ht ...

  8. 视频教程-基于NDK、C++、FFmpeg的android视频播放器开发实战-Android

    基于NDK.C++.FFmpeg的android视频播放器开发实战 夏曹俊:南京捷帝科技有限公司创始人,南京大学计算机硕士毕业,有15年c++跨平台项目研发的经验,领导开发过大量的c++虚拟仿真,计算 ...

  9. android 视频播放器 加载字幕,Android 实现视频字幕Subtitle和横竖屏切换示例

    系统自带的VideoView有些视频格式不支持,那么我们可以用第三方实现的VideoView替代系统的来播放视频,比较流行的有ijkplayer.vitamio. 最近有个需求就是需要给视频添加字幕, ...

最新文章

  1. 开源 | 基于会话的最优推荐模型:SR-GNN的PaddlePaddle实现
  2. java命令行生成jar_命令行生成可执行的jar包
  3. mysql 查询优化器跟踪_3. select语句执行过程-优化器
  4. 英语发音规则---发/i:/的字母及字母组合
  5. 还在为周会发愁?你需要这13篇最新论文 | 本周值得读
  6. bulid-tool
  7. Hadoop相关技术
  8. svm回归matlab工具箱很慢,PSO优化SVM参数进行回归预测,结果很不理想
  9. java 缓冲流 刷新_java – 缓冲和刷新Apache Beam流数据
  10. mysql集群之MHA简单搭建
  11. mysql查询加伪列_SQL Server数据库中伪列及伪列的含义详解
  12. 【cf:1100F】 Ivan and Burgers(多次区间最大异或值查询----线性基+离线+思维)
  13. 质因数分解的一些讨论(Pollard-Rho算法)
  14. 色散原理中涉及到的物理概念 折射率 波数 相速度 传播常数
  15. plot指定线段形状和颜色_形状和颜色背后的心理学
  16. java实现批量注册_Java写的批量域名注册查询程序
  17. JAVA毕业设计健身房信息管理系统计算机源码+lw文档+系统+调试部署+数据库
  18. 弘辽科技:拼多多高客单价怎么改低价格提升?
  19. 重磅干货!万字长文教你如何做出 ChatGPT
  20. C++ 跳跃游戏II

热门文章

  1. 深度学习和目标检测系列教程 12-300:常见的opencv的APi和用法总结
  2. Sun公司因为不懂销售和运营,导致陨落,最终软件还是打败了硬件
  3. ICCV 2021 | 重铸Regression荣光!具有残差对数似然估计的人体姿态回归
  4. BERT原理、代码、相关模型、精调技巧,看这个就够了
  5. 非自回归也能预训练:基于插入的硬约束生成模型预训练方法
  6. java第九章IO流与文件操作
  7. Java软件开发:自定义MyBatis持久层框架
  8. 乘法逆元总结 3种基本方法
  9. Fibonacci数列 矩阵快速幂
  10. 【学习笔记】吴恩达机器学习 WEEK2 线性回归 Octave教程