项目源码:
https://github.com/dogmeng/littleyunmusic
前言
之前做的App多半是巡检,点检类的,一直想开发不同类型的APP来练习.所以选择做一款音乐播放器,基本可以涵盖android所有的基础知识,比如四大组件,自定义控件,网络请求,跨进程通讯等等.
同时,也查阅了网上一些优秀项目, 在此非常感谢,链接如下:
1.https://github.com/aa112901/remusic
2.http://www.jianshu.com/p/6b5c6636ba55
项目简介
内容:
分为三个部分: 1.本地音乐2.网络音乐3.约唱歌.
其中,”本地音乐”部分已完成,另外两部分正在开发中.后续会更新.所以本文暂且只记录本地音乐播放的功能,相信走完整套播放流程,在线音乐也是一样道理,只需要添加在线音乐数据获取部分即可.
项目截图(界面有些部分参考了三星音乐):












包含技术:
1.ViewPager搭配Fragment懒加载
2.Material Design控件 DrawLayout+ListView(侧滑布局);Recycleview;CoordinatorLayout+AppBarLayout+CollapsingToolbarLayout等的使用
3.自定义控件的实现(MoveLine,PLayRoundView等)
4.Android6.0动态权限适配
5.沉浸式状态栏实现
6.利用EventBus进行组件间通讯
7.利用Glide加载图片
8.AIDL进行跨进程通讯
9.之前一直用okhttp做网路请求,本次计划使用RxJava+Retrofit2 (后续做完会更新)
使用到的第三方库:
EventBus,Glide,android-crop,RxJava+Retrofit2+OKhttp(后续会添加)
网友评论