/kotlin-life

App界的一股清流 音视频应有尽有 完全按照Material design规范设计的App (重构中向kotlin靠拢)

Primary LanguageJava

media icon

Life

App界的一股清流

目前项目持续更新重构中(向kotlin靠拢)

Life is a Multimedia information app based on Material Design Kotlin + MVP + RxJava + Retrofit + Dagger2 + GreenDAO + Glide

life 是一个多媒体信息app,基于Material Design Kotlin + MVP + RxJava + Retrofit + Dagger2 + GreenDAO + Glide

做这款app主要是出于Android日常开发中或多或少的都会仿着ios的样式来写ui(可能设计师就做了一份ios交互设计,android只能跟着去写相同ui),完全舍弃了MD风格,第一出于学习目的做的,第二出于想写一个完全按照MD风格的App。 目前包括以下内容:

视频来自:开眼 http://www.eyepetizer.net/汇集各种炫酷视频

音乐来自:余音 http://app.mi.com/details?id=fm.wawa.mg/文艺*年专属

文章来自:余音 http://www.wufazhuce.com/韩寒主编和监制

tips

1.本项目目前只是在开发测试阶段,发现bug或有好的建议欢迎 issues Email cuieney@163.com link.

2.本项目仅作为学习交流使用,API数据内容所有权归原公司所有,请勿用于其他用途

Preview

media icon media icon media icon media icon media icon media icon media icon media icon

Download APK

(Android 5.0 or above)

URL

Points

使用Rx家族配合Retrolambda减少代码量
使用RxJava配合Retrofit2做网络请求
使用Rxlifecycle对订阅的生命周期做管理
使用RxBus来方便组件间的通信
使用RxJava其他操作符来做延时、轮询、转化、筛选等操
使用okhttp3对网络返回内容做缓存,还有日志、超时重连、头部消息的配置
使用Material Design控件和动画
使用Ijkplayer来实现播放视频功能
使用MVP架构整个项目,对应于model、ui、presenter三个包
使用Dagger2将M层注入P层,将P层注入V层,无需new,直接调用对象
使用GreenDAO做阅读记录和收藏记录的增、删、查、改
使用Glide做图片的处理和加载
使用Fragmentation简化Fragment的操作和懒加载
使用Statusbaruitl动态的改变通知栏颜色
使用XRecyclerView实现下拉刷新、上拉加载
使用SVG及其动画实现progressbar的效果
包含搜索、收藏、检测更新等功能

Version

V2.1.0

1.添加kotlin代码块,essay tab 目前项目是kotlin and java 混编

2.增加kotlin act and fragment 基类 dagger2等 (功能并未完善)

3.持续更新中 (to kotlin)

V2.0.0

1.增加essay tab页面,修改了一些bug 更新了app icon(功能并未完善)

V1.0.0

1.第一版本提交(功能并未完善)

Thanks

API

开眼 余音 一个

APP:

Material Design 官方提供了部分设计思路

android-architectureGankClient-Kotlin提供了Dagger2配合MVP的架构思路

还参考了很多大神的类似作品,感谢大家的开源精神

RES

iconfont 提供了icon素材

material UP 提供了Material Design风格的素材

LIB

UI

  1. BottomNavigation

  2. floatingsearchview

  3. expandableTextView

  4. xrecyclerview

  5. statusbaruitl

RX

  1. RxJava

  2. RxAndroid

  3. RxPermissions

  4. RxLifecycle

VIDEO

  1. ijkplayer

  2. GSYVideoPlayer

NETWORK

  1. Retrofit

  2. OkHttp

  3. Glide

  4. Gson

DI

  1. Dagger2

  2. ButterKnife

FRAGMENT

  1. Fragmentation

LOG

  1. Logger

DB

  1. greenDAO

CANARY

  1. BlockCanary
  2. leakcanary

License

Copyright (c) 2017 cuieney

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.