i am having the same issue, i am using MediaController.MediaPlayerControl and its hang after play for about few minutes, is that what you having too?
On Friday, July 2, 2010 9:10:34 AM UTC-4, MarcoAndroid wrote: > > Hi, > > I've been starting to use the MediaController in combination with the > MediaPlayer. Besides finding out some documented weird behaviour (like > if you create a MediaController from XML the show()/hide() don't do > anything but they do work if you create the controller via code), I > did find some undocumented (AFAICT) buggy? behaviour. Here it goes: > > 1) Why is the mediacontroller too wide by default, that is when all > buttons are showing (which is the case when you create it from XML)? > See screenshot here: > http://www.4shared.com/photo/ogbrAo4H/mediacontroller_toowide_2010-0.html > The |< and >| are cut off! > Even on a real Nexus One it's too wide, only in landscape it fits > (easily; it doesn't get stretched full width either) > If I add paddingLeft and right to the wrapping LinearLayout, the left > & right of the mediacontroller are just cut off. > If I add paddingLeft and right to the MediaController xml, the left & > right of the mediacontroller are also just cut off. > If I change the width of the MediaController view in the XML to 200dip > it just gets cut off. > Apparently the controller is not made resolution independent using > dips etc? Or can I do something to make it fit? For now I take out the > << and >>, the user can seek with the slider too... > > 2) Why is it called a floating window (at least in its > implementation), I can't seem to be able to move it around. Floating > is meant here only as: it is on top of something? > > 3) It seems you really need to wait a bit before calling > controller.show() because otherwise something is not ready yet (I get > something like window null - Activity not started error). Is this > true? Is there a better way to do it than postDelayed as mentioned in > this post: > http://stackoverflow.com/questions/1759862/how-can-i-get-an-android-mediacontroller-to-appear-from-layout-xml? > > > > 4) It seems getBufferPercentage() only gets called when you press a > button on the control? I do see the mediaplayer's onBufferingUpdate() > getting called in the example below, but getBufferPercentage only when > I touch a button on the MediaController: > > controller.setMediaPlayer(new MediaController.MediaPlayerControl() { > public int getBufferPercentage() { > return bufferedPercentage; > } > public int getCurrentPosition() { > return mediaPlayer.getCurrentPosition(); > } > public int getDuration() { > return mediaPlayer.getDuration(); > } > public boolean isPlaying() {return mediaPlayer.isPlaying();} > public void pause() { > mediaPlayer.pause(); > } > public void seekTo(int pos) {} > public void start() { > mediaPlayer.start(); > } > }); > > Any ideas why it's not being called? My workaround for now is to do a > controller.show() call in mediaPlayer.onBufferingUpdate(). > > 5) This I found out by experience and seems to me incorrect in the > docs here: > http://developer.android.com/reference/android/widget/MediaController.html > I read the bottom 3 statements as: no prev/next buttons are shown if > setPrevNextListeners() is not being called. > But when creating the controller via XML they are shown disabled, > though I'm sure not having called setPrevNextListeners(). > > 6) In 1.6 the slider knob is showing correctly at starting and ending > point, see screenshot for starting point (note that the stream as been > loaded, but whether it's loaded or not has no impact): > http://www.4shared.com/photo/FeK1kxXT/mediacontroller_slider_sdk16_s.html > But in 2.1 the slider know is slightly hidden under "something" on the > left and "something" on the right, see screenshots: > http://www.4shared.com/photo/UH5jHyMd/mediacontroller_slider_sdk21_b.html > http://www.4shared.com/photo/8chC5_Q5/mediacontroller_slider_sdk21_b.html > Seems a bug to me. Or can I do something about this? > BTW: the correct position in 2.1 seems to be about 4secs into the > track, see this screenshot: > http://www.4shared.com/photo/fbM-PNJ1/mediacontroller_slider_sdk21_o.html > > 7): Why is the downloading of an mp3 from the internet (via a URL) > starting all over again when I drag the slider all the way to the left > (i.e 0)? Seems not necessary, and will make the user have to wait > again for the download. > > 8) In 1.6 it was fine to call controller.setEnabled(true) before > controller.setMediaPlayer(), but definitely in 2.1 it is not allowed > anymore, you get a NullpointerException. If you check the > MediaController source code, you'll see it's calling a mediaPlayer > method w/o checking for null. > > Hope somebody can provide some input on these! > > Regards, > Marco > > > > > > > -- 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

