最近在android开发学习中,了解到程序和程序之间的界限不像其他其它平台那样明显当我写一个程序,在下载好自定义的音频或视频文件后,能不能在程序中启动系统自带的音视频播放器进行播放呢?我是不是可以构造个合理的intent,给出文件路径,让它去启动系统已有的播放器?我的目的是,调用系统默认的音视频播放器,就可以免去自己另外费时间开发了

解决方案 »

  1.   

    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");
      

  2.   

    Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(videourl)); startActivity(intent); 应该能播放视频文件。
      

  3.   


    恩,不好意思,上次没有把完整的代码贴全,但有幸的是你竟然成功运行了;
    我再贴一下完整的代码: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;
    }注意:这段代码和上次的是一样的。至于你说定制,我没有做过,我想提示你是否继续上次播放,应该是播放器软件本身的一种功能,理论上应该是不能定制的。
    希望你可以找到好办法。