1

URLを使用してラジオを再生する簡単なラジオストリーミングアプリケーションを開発しています。このアプリケーションは、V>=4.0を除くすべてのバージョンで動作します

誰かがこれについて何か考えを持っていますか?

   initializeUIElements();
    StartPlaying();

     private void initializeUIElements() {

    buttonPlay = (ImageView) findViewById(R.id.buttonPlay);
    buttonPlay.setOnClickListener(this);
    playSeekBar=(ProgressBar)findViewById(R.id.progressBar1);
}


 private void startPlaying() {


    initializeMediaPlayer();
    player.setOnPreparedListener(new OnPreparedListener() {

        public void onPrepared(MediaPlayer mp) {

            Log.i("on prepared", "on prepared");
            mp.start();
        }
    });
    player.setOnErrorListener(new OnErrorListener(){
        public boolean onError(MediaPlayer arg0, int arg1,
            int arg2) {
            Toast.makeText(getApplicationContext(),"An error happened while preparing radio",Toast.LENGTH_LONG).show();
           player.reset();
            initializeMediaPlayer();
        return false;
        } 

});

private void initializeMediaPlayer() {
    player = new MediaPlayer();
   player.reset();
    try {
        player.setAudioStreamType(AudioManager.STREAM_MUSIC);
        player.setDataSource("http://***************");
        player.prepareAsync();

    } catch (IllegalArgumentException e) {
        e.printStackTrace();
    } catch (IllegalStateException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
    catch(Exception e)
    {
        e.printStackTrace();
    }

    player.setOnBufferingUpdateListener(new OnBufferingUpdateListener() {

        public void onBufferingUpdate(MediaPlayer mp, int percent) {

            Log.i("percent", ""+percent);
           if( (percent!=0)||(percent==100) )
           {

               playSeekBar.setVisibility(View.INVISIBLE);
               buttonPlay.setVisibility(View.VISIBLE);
           }


        }
    });

Androidバージョン4.0では、次のようなエラーが発生します。

  11-23 13:06:37.329: E/MediaPlayer(4011): Error (1,-2147483648)

Player.bufferingUpdateListener()は呼び出されません。ここでは、playseekbarが回転していることを示しています。これを手伝ってください。

4

1 に答える 1

0

特定のデバイスに問題がある可能性があります。4.0エミュレータで同じように実行してみてください。

于 2012-11-23T07:55:17.547 に答える