settile吧 关注:67贴子:3,220

【技术水】MediaPlayer用法

只看楼主收藏回复

我来工作室水帖了
我果然是水神
啦啦啦(≥▽≤)
准备材料先


来自Android客户端1楼2015-02-15 20:05回复
    现在太晚了,先睡觉,明天更


    来自Android客户端2楼2015-02-15 20:05
    回复
      2025-06-02 17:47:58
      广告
      别这样啊喂!
         --然而Mojang团队已经看穿了一切


      IP属地:河南来自Android客户端3楼2015-02-15 23:26
      收起回复
        mediaplayer是什么鬼!
           --然而Mojang团队已经看穿了一切


        IP属地:河南来自Android客户端4楼2015-02-15 23:27
        收起回复
          。。。


          来自Android客户端5楼2015-02-16 00:03
          回复
            好了,开更


            来自Android客户端6楼2015-02-16 10:27
            回复
              MediaPlayer其实是一个封装的很好的音频、视频流媒体操作类,如果查看其源码,会发现其内部是调用的native方法,所以它其实是由C++实现的。既然是一个流媒体操作类,那么必然涉及到,播 放、暂停、停止等操作,实际上MediaPlayer也为我 们提供了相应的方法来直接操作流媒体。


              来自Android客户端7楼2015-02-16 10:28
              回复
                static MediaPlayer create(Context context,int resid):通过音频资源的Id来创建一个MediaPlayer实 例。 static MediaPlayer create(Context context,Uri uri): 通过一个音频资源的Uri地址来创建一个MediaPlayer 实例。


                来自Android客户端9楼2015-02-16 10:32
                回复
                  2025-06-02 17:41:58
                  广告
                  ⊙ void setDataSource(String path):通过一个媒体资 源的地址指定MediaPlayer的数据源,这里的path可 以是一个本地路径,也可以是网络路径。
                  void setDataSource(Context context,Uri uri):通过 一个Uri指定MediaPlayer的数据源,这里的Uri可以 是网络路径或这一个内容提供者的Uri。
                  void setDataSource(FileDescriptor fd):通过一个 FileDescriptor指定一个MediaPlayer的数据源。


                  来自Android客户端10楼2015-02-16 10:32
                  回复
                    例子
                    mediaplayer=new MediaPlayer();
                    mediaplayer.setDataSource("/sdcarc/a.mp3");


                    来自Android客户端11楼2015-02-16 10:33
                    回复
                      void start():开始或恢复播放。
                      void stop():停止播放。
                      void pause():暂停播放。


                      来自Android客户端12楼2015-02-16 10:35
                      回复
                        void reset();重置


                        来自Android客户端13楼2015-02-16 10:35
                        回复
                          通过上面几个方法,只要设定好流媒体数据源, 即可在应用中播放流媒体资源,为了更好的操作流媒 体,MediaPlayer还为我们提供了一些其他的方法。


                          来自Android客户端14楼2015-02-16 10:36
                          回复
                            int getDuration():获取流媒体的总播放时长,单位是毫秒。
                            int getCurrentPosition():获取当前流媒体的播放的 位置,单位是毫秒。
                            void seekTo(int msec):设置当前MediaPlayer的播 放位置,单位是毫秒。
                            void setLooping(boolean looping):设置是否循环播 放。
                            boolean isLooping():判断是否循环播放。
                            boolean isPlaying():判断是否正在播放。
                            void prepare():同步的方式装载流媒体文件。
                            void prepareAsync():异步的方式装载流媒体文件。
                            void release ():回收流媒体资源。
                            void setAudioStreamType(int streamtype):设置播 放流媒体类型。
                            void setWakeMode(Context context, int mode):设 置CPU唤醒的状态。
                            setNextMediaPlayer(MediaPlayer next):设置当前 流媒体播放完毕,下一个播放的MediaPlayer。


                            来自Android客户端15楼2015-02-16 10:37
                            收起回复
                              2025-06-02 17:35:58
                              广告
                              在使用MediaPlayer播放一段流媒体的时候,需要使用prepare()或prepareAsync()方法把流媒体装载进MediaPlayer,才可以调用start()方法播放流媒,一般来说prepareAsync()更加方便,异步


                              来自Android客户端16楼2015-02-16 10:39
                              回复