做一个android音乐播放器应用,歌曲是从媒体库中查找的,当我需要实现歌曲的上一首下一首功能时,请问应该怎么实现。还有我想使用seekBar来同步音乐的进度,播放的组件MediaPlayer是在一个Service中,我应该怎么在UI得到Service中的MediaPlayer并实现控制,有知道的大神请给点建议,谢谢了

解决方案 »

  1.   

    aidl很方便,在aidl中定义好接口,如stop(),play(),pause(),在media的Service中实现,让后在activity中bindService,获得一个binder对象,binder对象实现aidl中定义的接口,所以可用直接调用stop()这些方法。
    当然也可用用广播,Hadler也应该可用的
      

  2.   

    上一首/下一首,最简单的方法就是发一个广播通知service中的player进行更换,还可以在activity中绑定service,在activity中拿到service对象,从而实现对上一首、下一首的控制,另外还可以在onStart方法中实现对上一首、下一首功能,在activity通过startService来实现
      

  3.   

    我的想法是根据资源的id查找上一首下一首,问题是我把音乐资源放在sd卡里面,怎么才能得到音乐资源的id?如果我从音乐资源放入到媒体库里面也可以查找,但是我不知道怎么把sd卡中文件放入到媒体库中
      

  4.   

    那我应该从sd卡还是媒体库读取音乐资源的id,android会主动将sd卡中的音乐资源加入到媒体库吗