如何调用系统自带的播放器播放视频呢?
最近在android开发学习中,了解到程序和程序之间的界限不像其他其它平台那样明显
当我写一个程序,在下载好自定义的音频或视频文件后,能不能在程序中启动系统自带的音视频播放器进行播放呢?我是不是可以构造个合理的intent,给出文件路径,让它去启动系统已有的播放器?
我的目的是,调用系统默认的音视频播放器,就可以免去自己另外费时间开发了
------解决方案--------------------
public Intent getMediaFileIntent(File audioFile)
{
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra("oneshot", 0);
intent.putExtra("configchange", 0);
Uri uri = Uri.fromFile(audioFile);
String filename = audioFile.getName();
String suffixName = filename.substring(filename.lastIndexOf("."), filename.length());
intent.setDataAndType(uri, DT.get(suffixName));
return intent;
}
File audioFile = new File("/mnt/sdcard/files/Hwllo.mp4");
------解决方案--------------------
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(videourl)); startActivity(intent); 应该能播放视频文件。
------解决方案--------------------
引用:非常感谢!
我使用了这种方法,成功用默认播放器播放视频
但存在个问题,我第二次运行播放时,播放器会提示是否跳转到上次播放的位置继续播放,而这个功能是我不需要的,有办法定制默认播放器的功能吗?
引用:Java code?1234567891011121314public Intent getMediaFileIntent(……
恩,不好意思,上次没有把完整的代码贴全,但有幸的是你竟然成功运行了;
我再贴一下完整的代码:
private Intent getVideoFileIntent(File videoFile)
{
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra("oneshot", 0);
intent.putExtra("configchange", 0);
Uri uri = Uri.fromFile(videoFile);
intent.setDataAndType(uri, "video/*");
return intent;
}
注意:这段代码和上次的是一样的。
至于你说定制,我没有做过,我想提示你是否继续上次播放,应该是播放器软件本身的一种功能,理论上应该是不能定制的。
希望你可以找到好办法。