Android项目之视频播放器
视频播放
1)VideoView控件播放视频
VideoView控件是播放视频用的,借助它可以完成一个简易的视频播放器。
①在activity_main.xml中编写相应的控件
<?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=".MainActivity"><ImageViewandroid:id="@+id/bt_play"android:layout_width="80dp"android:layout_height="80dp"android:layout_alignParentBottom="true"android:layout_centerHorizontal="true"android:layout_marginBottom="150dp"android:src="@android:drawable/ic_media_play" /><VideoViewandroid:id="@+id/videoview"android:layout_width="match_parent"android:layout_height="match_parent" />
</RelativeLayout>
②在MainActivity实现SeekBar.OnSeekChangeListener接口与SurfaceHolder.Callback接口,并重写这两个接口中对应的方法,在这些方法中实现播放视频的。
package com.example.videoview;
import android.media.MediaPlayer;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
import android.widget.MediaController;
import android.widget.VideoView;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity implementsView.OnClickListener {private VideoView videoView;private MediaController controller;ImageView iv_play;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);videoView = (VideoView) findViewById(R.id.videoview);iv_play = (ImageView) findViewById(R.id.bt_play);//拼出在资源文件夹下的视频文件路径String字符串String url = "android.resource://" + getPackageName() + "/" + R.raw.video;//字符串解析成UriUri uri = Uri.parse(url);//设置videoview的播放资源videoView.setVideoURI(uri);//VideoView绑定控制器controller = new MediaController(this);videoView.setMediaController(controller);iv_play.setOnClickListener(this);}@Overridepublic void onClick(View v) {switch (v.getId()) {case R.id.bt_play:play();break;}}// 播放视频private void play() {if (videoView != null && videoView.isPlaying()) {iv_play.setImageResource(android.R.drawable.ic_media_play);videoView.stopPlayback();return;}videoView.start();iv_play.setImageResource(android.R.drawable.ic_media_pause);videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {@Overridepublic void onCompletion(MediaPlayer mp) {iv_play.setImageResource(android.R.drawable.ic_media_play);}});}
}
③修改清单文件,设置属性screenOrientation为横向。
Android项目之视频播放器相关推荐
- android 实现视频播放功能,Android项目实现视频播放器
本文实例为大家分享了Android项目实现视频播放器的具体代码,供大家参考,具体内容如下 VideoView控件是播放视频用的,借助它可以完成一个简易的视频播放器. ①在activity_main.x ...
- Android开发之视频播放器
Android开发之视频播放器 一.效果图 二.build.gradle中导入依赖 三.主布局文件(activity_video) 四.布局文件(video_item) 五.布局文件(activity ...
- 开源安卓Android流媒体音视频播放器实现声音自动停止、恢复、一键静音功能源码
本文转自EasyDarwin团队John的博客:http://blog.csdn.net/jyt0551/article/details/60802145 我们在开发安卓Android流媒体音视频播放 ...
- android系统更新视频播放器,基于的Android系统地视频播放器.doc
本科毕业设计(论文) 基于Android系统的视频播放器Through the implementation of video player based on Android platform 致 谢 ...
- Android学习6——视频播放器
一.学习目标 1.综合应用课程知识. 2.掌握 App 开发流程及相关工具. 3.设计一个基于 Android 平台的简单视频播放器. 二.环境 1.JDK-15.0.2 以上 2.Android S ...
- Android Studio——简单视频播放器
1.界面分析 三个界面:主界面,视频列表界面,视频播放界面,如下图所示: 2.实现思路 (1)主界面设计 很简单,就一个背景和一个控件,然后为控件设置点击事件,然后跳转到视频列表界面 activity ...
- android ios 传视频播放器,推荐用于iOS / Android全面格式的视频播放器|手机最强大的播放器...
几天前,一个朋友以ts格式下载了一些高清电视剧,但是无法在iPad上播放,因此我想在计算机上将其转换为MP4格式. 花了时间和精力,结果并不令人满意. 事实上手机上的万能播放器,所有平台现在都具有支持 ...
- 个人项目---音乐视频播放器
项目背景:一个公共的音乐视频播放器,用户通过上传歌曲或视频分享自己喜欢的音乐和视频,也可以把列表中的音乐或视频添加为喜欢,支持模糊查询等功能. 基本功能: 新用户注册 老用户登录 主界面中能看到当前系 ...
- Android MediaPlayer本地视频播放器
该文章的目的是,让初学者能够快速掌握一个简单的本地视频播放器.该Demo中用到了SurfaceView.MediaPlayer. 实现效果图: <RelativeLayout xmlns:and ...
最新文章
- ROS Publisher node
- 日常生活 -- 开博一周年
- Ocelot简易教程(七)之配置文件数据库存储插件源码解析
- angularjs 整合bootstrap 时间控件
- 北航成教计算机课程,成教生:从问题学生到北航计算机本科生
- 如何评价国内SRC纷纷上线“白帽子协议”?
- React Native之didFocus和didBlur
- linux获取ip地址的接口,获取Linux上接口的IP地址
- java 二叉树特点_二叉树的Java实现及特点总结
- java 蓝桥杯算法提高 出现次数最多的整数
- 调用软键盘_Android 支持拖动、缩放的自定义软键盘
- XPath 轴 Axes
- Python版24点游戏
- vue项目引入三方字体
- 4.shell脚本中的变量
- e.pageX、e.clientX、e.screenX、e.offsetX的区别以及元素的一些CSS属性
- SQL学习笔记6-决胜秋招
- Salesforce Schedule中调用接口案例
- 小红书api_【实习精选】oppo、小红书等名企实习汇总(96)
- ASM原理详解,以及使用附代码,AOP利器
热门文章
- 教程:建立自己的私有云存储
- 为什么邮件发的邮箱会进垃圾箱?企业邮箱进垃圾箱有什么处理方法?
- 计算机p是什么单位是什么,功率的计算公式及单位
- 木马也办“假身份证” 数字签名面临信任危机
- Leetcode——507. Perfect Number
- 调试本地SQLServer存储过程
- xpath路径解析初级:
- Android.mk入门教程
- java计算机毕业设计线上文具销售系统源程序+mysql+系统+lw文档+远程调试
- 打开ArcMap、ArcCatalog、ArcScene、ArcGlobe、ArcEngine出现All ArcGIS for Desktop Advanced licenses are in use