代码之家  ›  专栏  ›  技术社区  ›  junmats

Android简单媒体播放器问题

  •  1
  • junmats  · 技术社区  · 14 年前

    有人能告诉我我的密码怎么了吗?

    try{
    MediaPlayer p = new MediaPlayer();
    p.setDataSource(getCacheDir() + "/temp.mp3");
    p.prepare();
    p.start();
    }catch(Exception e){}
    

    MediaPlayer p在调用prepare()时捕获异常。文件temp.mp3已经在缓存文件夹中,它没有被损坏,也没有被播放。是不是MediaPlayer不能在缓存上播放文件?

    2 回复  |  直到 14 年前
        1
  •  1
  •   Fedor    14 年前

    可能cache dir是您的私有目录,媒体播放器无法访问它。试着用SD卡玩。

        2
  •  1
  •   user969185    13 年前

    使用文件描述符:

    try{
        MediaPlayer p = new MediaPlayer();
        FileInputStream fis = new FileInputStream(getCacheDir() + "/temp.mp3");
        p.setDataSource(fis.getFD());
        p.prepare();
        p.start();
    }catch(Exception e){}