使用mediaplayer的Android http直播流媒体网址

时间:2011-11-17 11:06:41

标签: android http-live-streaming android-mediaplayer

我正在尝试播放一个网址,但它没有播放,我使用的代码在下面......日志显示Mediaplayer错误(1,-1002),开始状态为0和错误(-38,0)为什么。 ..?我哪里错了......你可以帮我解释怎么玩........

       import java.io.IOException;

       import android.app.Activity;
       import android.media.AudioManager;
       import android.media.MediaPlayer;
         import android.os.Bundle;
      import android.view.View;
      import android.widget.ImageButton;
       import android.widget.TextView;

        public class BacaFatihahActivity extends Activity {



        final String songs_urIs= "http://stream.radiosai.net:8002/";
           // private TextView txt_song_title;
        private MediaPlayer mediaplayer;
        @Override
         public void onCreate(Bundle savedInstanceState){
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main);
  ImageButton btn_play = (ImageButton) findViewById(R.id.button_play);
  ImageButton btn_pause = (ImageButton) findViewById(R.id.button_pause);
  ImageButton btn_next = (ImageButton) findViewById(R.id.button_next);
  ImageButton btn_previous = (ImageButton) findViewById(R.id.button_Previous);
  //txt_song_title = (TextView) findViewById(R.id.txt_song_title);

  mediaplayer = new MediaPlayer();
  mediaplayer.setAudioStreamType(AudioManager.STREAM_MUSIC);


  btn_play.setOnClickListener(new View.OnClickListener() {

    public void onClick(View v) {
        try {
            mediaplayer.setDataSource(songs_urIs);
        } catch (IllegalArgumentException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IllegalStateException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
          try {
            mediaplayer.prepare();
        } catch (IllegalStateException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
         mediaplayer.start();   
    }
       });


        }
       }

1 个答案:

答案 0 :(得分:1)

正确的代码,但错误的api级别〜

并不是每个api级别都支持这种方式播放媒体,http直播,可能你需要api等级10或更高