ijkplayer
+Rxjava
+Rxandroid
+Retrofit2.0
+MVP
+Material Design
的android万能播放器,能够播放本地和在线视频,能够浏览宅男杀手妹纸图片,UI设计遵循 Material Design。
RecyclerView
,item为CardView并设置ripple波纹点击效果TabLayout
NavigationView
FloatingActionMenu
MVP
架构,第一次真正使用MVP,真的使用了才会发现MVP的优点,MVP可使Activity和Fragment很是简洁,Activity和Fragment中也不须要知道是怎么操做和流转的,咱们只须要在回调接口中操做更新UI就能够了。Rxjava+Rxandroid
,之前也是没用过,用过才发现、Rxjava是真的强大,Rxjava拥有很是丰富的操做符,咱们灵活使用Rxjava能够创造无限可能,Rxjava就像搭建积木,Rxjava的操做符就行是积木块,使用Rxjava咱们能够搭建出各类各类的积木,能够创造出不少可能,前提是你对Rxjava十分了解。retrofit2.0
,retrofit2.0自己就很强大,配合、Rxjava后就更增强大了,retrofit2.0的使用我尚未更加深刻的研究,往后再搞。picasso
,picasso自己支持本地缓存。经过本app你能够学到:
- ijkplayer-Android
编译封装和集成
- MVP架构,虽然个人这个app不是很复杂,可是大概的MVP是有的,首先我认可个人Model层写得不是很好。
- 能够学习到Rxjava的使用,使用Rxjava递归读取内存全部的视频文件并分类,能够学习到just
、from
、flatMap
、groupBy
、filter
等Rxjava操做符,相对别的app我用到的操做符相对还算多的。
- 学习到retrofit2.0的使用,结合Rxjava作网络请求。
- 离线缓存,能够学习到离线数据缓存策略,以及缓存工具的使用。
- BaseActivity
、BaseFragment
、BaseRecyclerViewAdapter
和BaseRecyclerViewHolder
的封装。
- Material Design和android5.0之后的新控件使用java
//FloatingActionMenu compile 'com.github.clans:fab:1.6.4' //retrofit compile 'com.squareup.retrofit:retrofit:2.0.0-beta2' compile 'com.squareup.retrofit:converter-gson:2.0.0-beta2' compile 'com.squareup.retrofit:adapter-rxjava:2.0.0-beta2' //Rxjava + Rxandroid compile 'io.reactivex:rxandroid:1.2.0' compile 'io.reactivex:rxjava:1.1.5' //blurview compile 'com.eightbitlab:blurview:1.0.2' //photoview compile 'com.bm.photoview:library:1.4.0' //picasso compile 'com.squareup.picasso:picasso:2.5.2' //umeng compile 'com.umeng.analytics:analytics:latest.integration'
上架中…react