android:自己实现能播放网络视频url的播放器

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

android原生自带的播放器一般只能播放本地视频,而没有播放url的功能。不过android系统中有一个VideoView的控件可以实现这一功能。

简单实现如下:

public class MyVideoPlay extends Activity implements MediaPlayer.OnErrorListener,MediaPlayer.OnCompletionListener {public static final String TAG = "MyVideoPlay";private VideoView mVideoView;private Uri mUri;private int mPositionWhenPaused = -1;private MediaController mMediaController;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.video_view);//Set the screen to landscape.this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);mVideoView = (VideoView)findViewById(R.id.my_video_view);//Video fileIntent it = getIntent();mUri = Uri.parse(it.getStringExtra("netUrl"));//Create media controllermMediaController = new MediaController(this);mVideoView.setMediaController(mMediaController);mVideoView.setOnCompletionListener(new OnCompletionListener() {			@Overridepublic void onCompletion(MediaPlayer mp) {// TODO Auto-generated method stubMyVideoPlay.this.finish();}});}public void onStart() {// Play Videoif (mVideoView != null && mUri != null) {mVideoView.setVideoURI(mUri);mVideoView.start();} else {Toast.makeText(MyVideoPlay.this, "发生错误", Toast.LENGTH_SHORT).show();}super.onStart();}public void onPause() {mPositionWhenPaused = mVideoView.getCurrentPosition();mVideoView.stopPlayback();       super.onPause();}public void onResume() {// Resume video playerif(mPositionWhenPaused >= 0) {mVideoView.seekTo(mPositionWhenPaused);mPositionWhenPaused = -1;}super.onResume();}public boolean onError(MediaPlayer player, int arg1, int arg2) {return false;}public void onCompletion(MediaPlayer mp) {MyVideoPlay.this.finish();}
}

 截图:

 

转载于:https://my.oschina.net/nicksong/blog/149264

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/293097.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ant 学习

到了新公司,发现公司使用ant 来代码生成。本来学习后写下来。在网上找到一篇教程,实在是非常给力。。。 就把连接记下来吧:http://www.blogjava.net/amigoxie/archive/2007/11/09/159413.html 可以一起学习。转载于:https://www.cnblogs.com/…

iOS调用系统相册、相机 显示中文标题

2019独角兽企业重金招聘Python工程师标准>>> 最终在info.plist设置解决问题 发现在项目的info.plist里面添加Localized resources can be mixed 设置为: YES(表示是否允许应用程序获取框架库内语言)即可解决这个问题。 转载于:htt…

linux之nl命令

nl命令在linux系统中用来计算文件中行号。nl 可以将输出的文件内容自动的加上行号!其默认的结果与 cat -n 有点不太一样, nl 可以将行号做比较多的显示设计,包括位数与是否自动补齐 0 等等的功能。 1.命令格式: nl […

使用云原生应用和开源技术的创新攻略

Kubernetes 和云原生应用的增长以及普及是现象级的。根据 IDC 的数据,到2025年,90%以上的新应用程序将是云原生的。许多客户已受益于云原生设计模型,让新一代应用程序更加敏捷、可靠、可扩展,还兼顾了安全。说到服务的开发&#x…

SVM支持向量机原理及核函数

原文链接:SVM支持向量机原理及核函数 转载请注明出处 支持向量机原理 大距离分类算法 1、名词解释: 分割超平面:如下图所示,构造一个分割线把圆形的点和方形的点分开,这个线称为分割超平面。支持向量:…

SQL对Xml字段的操作

转:http://www.cnblogs.com/youring2/archive/2008/11/27/1342288.html T-Sql操作Xml数据 一、前言 SQL Server 2005 引入了一种称为 XML 的本机数据类型。用户可以创建这样的表,它在关系列之外还有一个或多个 XML 类型的列;此外,…

URL 路径长度限制(错误:指定的文件或文件夹名称太长)

本节讨论 URL 的构成、SharePoint 2010 构建 URL 的方式、URL 的编码和加长以及作为其他 URL 中的参数传递的方式。 SharePoint URL 的构成 SharePoint URL 的总长度等于文件夹或文件路径的长度,包括协议和服务器名称和文件夹或文件名称,以及作为 URL 的…

linux之less 命令

less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看,但若使用了 less …

生产物流

前段时间有朋友问我关于“生产过程件入库和盘点”的事情,在《仓库盘点》一文中,我们讲解了“半成品”与“过程件”的概念的区分以及其是否入库和盘点做了说明。最近又有朋友问我关于物流与工艺流的结合应用问题,今天特写了此篇文章供大家参考…

sklearn线性回归详解

图片若未能正常显示,点击下面链接: http://ihoge.cn/2018/Logistic-regression.html 在线性回归中,我们想要建立一个模型,来拟合一个因变量 y 与一个或多个独立自变量(预测变量) x 之间的关系。 给定: 数据集 {(x…

linux之more命令

more命令,功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上。 more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back&…

DateOnly和TimeOnly类型居然不能序列化!!! .Net 6下实现自定义JSON序列化

前言.Net 6引入了DateOnly和TimeOnly结构,可以存储日期和时间。但在实际使用时,发现一个很尴尬的问题,DateOnly和TimeOnly居然不能被序列化:var builder WebApplication.CreateBuilder(args);var app builder.Build();app.MapGe…

PHP面向对象之旅:抽象类继承抽象类(转)

可以理解为对抽象类的扩展 抽象类继承另外一个抽象类时,不用重写其中的抽象方法。抽象类中,不能重写抽象父类的抽象方法。这样的用法,可以理解为对抽象类的扩展。 下面的例子,演示了一个抽象类继承自另外一个抽象类时,…

Scala编程指南

1.scala简介 2004年,martin ordersky发明,javac的编译器,后来spark,kafka应用广泛,twitter应用推广。它具备面向对象和函数式编程的特点。 官网:www.scala-lang.org,最近版本2.12.5,我们用的是2.10.42.环境…

win7 64位下如何安装配置mysql-5.7.4-m14-winx64(安装记录)

1. mysql-5.7.4-m14-winx64.zip下载 官方网站下载地址:http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.17-winx64.zip 2、解压到D:\mysql.(路径自己指定) 3、在D:\mysql\mysql-5.7.4-m14-winx64下新建my.ini配置文件 内容如下&am…

Android之ndk之gdb调试

https://code.google.com/p/android/issues/detail?id152832

使用插件创建 .NET Core 应用程序

使用插件创建 .NET Core 应用程序本教程展示了如何创建自定义的 AssemblyLoadContext 来加载插件。AssemblyDependencyResolver 用于解析插件的依赖项。该教程正确地将插件依赖项与主机应用程序隔离开来。将了解如何执行以下操作:构建支持插件的项目。创建自定义…

支持向量机SVC

原文: http://ihoge.cn/2018/SVWSVC.html 支持向量机(support vector machine)是一种分类算法,但是也可以做回归,根据输入的数据不同可做不同的模型(若输入标签为连续值则做回归,若输入标签为分类值则用SVC()做分类&…