Finally, I solved it!!!

On Jun 22, 2:26 pm, manoj <[email protected]> wrote:
> Hi, why can't my seek bar (with time) is not updating according to
> mediaplayer time.
>
> Can any one please help me.
>
> Thanks,
> Manoj.
>
> On Jun 22, 11:37 am, manoj <[email protected]> wrote:
>
>
>
> > Hi,
>
> > I want to enable the MediaController for the MediaPlayer.
>
> > For this I have written the code like this:
>
> > public class AudioPlayerNew extends Activity implements
> > MediaPlayerControl,MediaPlayer.OnPreparedListener,MediaPlayer.OnBufferingUp 
> > dateListener
> > {
> >          MediaController mediaController;
> >          MediaPlayer mMediaPlayer;
> >          private String path = "/sdcard/Kaarulo Shikarukelle.mp3";
> >          int percent = 1;
> >          boolean playerState = true;
>
> >         public void onCreate(Bundle icicle)
> >         {
> >                 super.onCreate(icicle);
> >                 setContentView(R.layout.sdcard_media_view);
> >                 mediaController = (MediaController) findViewById
> > (R.id.MediaController01);
> >                 playAudio(path);
> >                 mediaController.setAnchorView( findViewById
> > (R.layout.sdcard_media_view));
> >                 mediaController.setMediaPlayer(this);
> >                 mediaController.bringToFront();
> >                 mediaController.setEnabled(true);
> >         }
>
> >         private void playAudio(String media)
> >         {
> >                                 try
> >                                {
> >                                 mMediaPlayer = new MediaPlayer();
> >                                          mMediaPlayer.setDataSource(path);
> >                                            mMediaPlayer.prepare();
>
> > mMediaPlayer.setOnSeekCompleteListener(this);
>
> > mMediaPlayer.setOnPreparedListener(this);
>
> > mMediaPlayer.setOnCompletionListener(this);
>
> > mMediaPlayer.setOnErrorListener(this);
> >                        }
> >                        catch (Exception e)
> >                               {
> >                             Log.e(TAG, "error: " + e.getMessage(), e);
> >                               }
>
> >               }
>
> > @Override
> >     protected void onDestroy() {
> >         super.onDestroy();
> >         // TODO Auto-generated method stub
> >         dismissDialog();
> >         if(null != mMediaPlayer)
> >         {
> >                 mMediaPlayer.release();
> >                 mMediaPlayer = null;
> >         }
>
> >                 wakeLock.release();
> >     }
>
> >         @Override
> >         public int getBufferPercentage() {
> >                 System.out.println("MediaController.getBufferPercentage()
> > called!!!");
> >                 // TODO Auto-generated method stub
> >                 return percent;
> >         }
>
> >         @Override
> >         public int getCurrentPosition() {
> >                 System.out.println("MediaController.getCurrentPosition()
> > called!!!");
> >                 // TODO Auto-generated method stub
> >                 return mMediaPlayer.getCurrentPosition();
> >         }
>
> >         @Override
> >         public int getDuration() {
> >                 System.out.println("MediaController.getDuration() 
> > called!!!");
> >                 // TODO Auto-generated method stub
> >                 return mMediaPlayer.getDuration();
> >         }
>
> >         @Override
> >         public boolean isPlaying()
> >         {
> >                 //System.out.println("MediaController.isPlaying() 
> > called!!!");
> >                 // TODO Auto-generated method stub
> >                 return playerState;
> >         }
>
> >         @Override
> >         public void pause()
> >         {
> >                 //System.out.println("MediaController.pause() called!!!");
> >                 // TODO Auto-generated method stub
> >                 if(null != mMediaPlayer)
> >                 {
> >                         mMediaPlayer.pause();
> >                 }
> >                 playerState = false;
> >         }
>
> >         @Override
> >         public void seekTo(int pos)
> >         {
> >                 // TODO Auto-generated method stub
> >                 //System.out.println("MediaController.seekTo() called!!!");
> >                 if(mMediaPlayer != null)
> >                 {
> >                         mMediaPlayer.seekTo(pos);
> >                 }
> >         }
>
> >         @Override
> >         public void start()
> >         {
> >                 //System.out.println("MediaController.start() called!!!");
> >                 // TODO Auto-generated method stub
> >                 if(null != mMediaPlayer )//&& !mMediaPlayer.isPlaying())
> >                 {
> >                         mMediaPlayer.start();
> >                 }
> >                 playerState = true;
> >         }
>
> >         @Override
> >         public void onPrepared(MediaPlayer arg0) {
> >                 // TODO Auto-generated method stub
> >                 dismissDialog();
> >                 mMediaPlayer.start();
> >         }
>
> >         @Override
> >         public void onCompletion(MediaPlayer mp) {
> >                 // TODO Auto-generated method stub
> >                 Log.i("VideoViewDemo ->"," onCompletion() 
> > calledooooochhhhhhhh");
> >                 setProgressBarIndeterminateVisibility(false);
> >                 finish();
> >         }
>
> >         @Override
> >         public void onBufferingUpdate(MediaPlayer mp, int arg1) {
>
> >                 System.out.println("Buffer percentage :"+arg1);
> >                 // TODO Auto-generated method stub
> >                 percent = arg1;
> >         }
>
> >         @Override
> >         public boolean onError(MediaPlayer mp, int what, int extra) {
> >                 isVideoFilePlayedProperly = false;
>
> >                 // TODO Auto-generated method stub
> >                 Log.i("VideoViewDemo ->"," onError() calledooooochhhhhhhh");
> >                 Log.i("onERROR:","arg1:"+what);
> >                 Log.i("onERROR:","arg2:"+extra);
> >                 return true;
> >         }
>
> > }
>
> > I added MediPlayerController to the layout and able to view the same.
>
> > And I am able to play/pause through these controls.
>
> > But the app is not updating the buffer (seek bar movement).
>
> > When only I move the trackball, then I am able to see the track bar
> > increment/decrement according to the trackbar.
>
> > Now I have two problems:
>
> > 1. seek bar is not incrementing according to the mediaplayer.
>
> > 2. I am not able to exit the app when I press the 'Back' key, only
> > when the song completes then the app got exited.
>
> > I am playing mp3 songs from sdcard.
>
> > Can anyone please help me.
>
> > Thanks,
> > Manoj.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to