如何暂停播放和停止音频文件Streaming来自parse.com(android)?

时间:2015-09-15 10:35:34

标签: java android audio parse-platform

我正试图在我的应用程序中从parse.com播放音频。我能够启动并播放媒体文件,但无法暂停并停止播放。这是代码:

ParseQuery<ParseObject> query = ParseQuery.getQuery("Table");
query.getInBackground(ObjId, new GetCallback<ParseObject>() {
public void done(ParseObject recording, com.parse.ParseException e) {
    if (e != null) { 
       //do nothing
    }
    else {
        ParseFile audioFile = recording.getParseFile("Audio"); 
        String audioFileURL = audioFile.getUrl();
        mediaPlayer = new MediaPlayer();
        mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
        try {
            mediaPlayer.setDataSource(audioFileURL);
            mediaPlayer.prepare();
              //mediaPlayer.start();
           mediaPlayer.start();

          finalTime = mediaPlayer.getDuration();
          startTime = mediaPlayer.getCurrentPosition();
        } catch (IllegalArgumentException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        } catch (SecurityException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        } catch (IllegalStateException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        } catch (IOException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        }        
    }
}
}); 

1 个答案:

答案 0 :(得分:0)

你没有播放直播,当你在

中设置动作时下载对象后播放文件

public void done(ParseObject recording, com.parse.ParseException e)

并且这个方法在另一个使情况复杂化的线程中执行,你应该首先得到文件:

ParseQuery<ParseObject> query = ParseQuery.getQuery("Table");
ParseObject obj = query.getFirst()
ParseFile audioFile = obj.getParseFile("Audio"); 
        String audioFileURL = audioFile.getUrl();
        mediaPlayer = new MediaPlayer();
        mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);

然后实现您的其他功能。