开源APP项目源码分析(5)- 音乐播放器类

来源:互联网 发布:大智慧 股票数据接口 编辑:程序博客网 时间:2024/05/21 17:40

这次分析的APP属于音乐播放类,也还是通过泡在网上的日子网站查找的github开源项目。参考的APP如下:
- Shuttle
- ListenerMusicPlayer
- remusic
- StylishMusicPlayer
- Hide-Music-Player
- Timber

通过对这些应用实现的了解,掌握音乐播放器类APP开发原理。

Shuttle

ListenerMusicPlayer

简介

一款优雅的遵循 Material Design 的开源音乐播放器,UI参考 腾讯轻听 音乐播放器,使用 Lastfm Api 与 酷狗歌词Api。项目架构采用 mvp-clean,基于 Retrofit2 + Dagger2 + Rxjava + RxBus + Glide。

相关开源库

序号 开源库 简要说明 1 rxjava + retrofit + okhttp + butterknife+glide 此处忽略一个个介绍 2 net.steamcrafted:materialiconlib:1.1.1 包含1000多个material矢量图标的安卓图标库 3 com.google.dagger:dagger:2.0
com.google.dagger:dagger-compiler:2.0
org.glassfish:javax.annotation:10.0-b28 dagger2 开源库 4 com.afollestad.material-dialogs:core:0.9.1.0 一个比较好用的MD风格的Dialog 5 com.nostra13.universalimageloader:universal-image-loader:1.9.4 图片异步加载类库 6 com.sothree.slidinguppanel:library:3.3.1 AndroidSlidingUpPanel提供了一种通过向上拖动添加额外面板(sliding panel)的开源库 7 com.github.naman14:app-theme-engine:0.5.2@aar(github上已经没有了) 一个易于使用的app级别Android主题引擎

相关亮点

1)界面布局框架

  1.主界面MainActivity
   NavigationView  
      MainFragment(主Fragment界面)
          SongsFragment(歌曲界面)
          ArtistFragment(歌手界面)
          AlbumFragment(专辑界面)
      FoldersFragment(文件夹界面)          
      PlaylistFragment(播放列表)
      AlbumDetailFragment(专辑详情界面)
      ArtistDetailFragment(歌手详情界面)
      SearchFragment(搜索界面)
     
     

3 0