android 调用系统播放器

作者: cnbzlj 发布时间: 2019-09-26 浏览: 2981 次 编辑

今天,简单讲讲android如何调用手机自带的播放器。

昨天,从服务器下载一个AVI的视频,下载后需要进行播放,所以想调用系统自带的播放器。但是由于很少用到,所以自己当时不知道怎么写,于是在网上查找资料,最终是解决了问题。这里记录一下。

一.网上的常见调用播放器代码(存在问题)

String url = "http://192.168.0.1/1.mp4"
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
String type = "video/*"
Uri uri = Uri.parse(url);
intent.setDataAndType(uri,type);
startActivity(intent);

简单讲讲,这个可以调用部分手机的播放器,但是我在小米手机测试时,却发现无法调用小米手机的播放器,后来,在网上查找资料,才发现是Uri的问题。

二.调用所有手机播放器

1.调用播放器播放手机文件的视频

Intent intent = new Intent(Intent.ACTION_VIEW);
String path = Environment.getExternalStorageDirectory().getPath()+ "/1.mp4";//该路径可以自定义
File file = new File(path);
Uri uri = Uri.fromFile(file);
intent.setDataAndType(uri, "video/*");
startActivity(intent);

也可以这样写:

Intent intent=new Intent();
        intent.setAction(Intent.ACTION_VIEW);
        //SDCard卡根目录下/DCIM/Camera/test.mp4文件
        Uri uri=Uri.parse("file:///sdcard/DCIM/Camera/test.mp4");
        intent.setDataAndType(uri, "video/*");
        startActivity(intent);

2.调用播放器播放网络视频

String url = "http://www.baidu.com/1.mp4";//示例,实际填你的网络视频链接
String extension = MimeTypeMap.getFileExtensionFromUrl(url);
String mimeType = MimeTypeMap.getSingleton().getMimeTypeFromExtension(extension);
Intent mediaIntent = new Intent(Intent.ACTION_VIEW);
mediaIntent.setDataAndType(Uri.parse(url), mimeType);
startActivity(mediaIntent);

这个很简单,所有没什么好讲的。就是Uri需要注意。

android 调用系统播放器就讲完了。

就这么简单。