Android 组件化开源 app -开眼短视频(OpenEyes)

Android-MvvmComponent-App

项目地址:darryrzhong/Android-MvvmComponent-App 

简介: Android 组件化开源 app -开眼短视频(OpenEyes)

更多:作者   提 Bug   

标签:

 

一款模仿 Eyepetizer | 开眼视频的 开源 app

  • 这是一个完全模仿 开眼视频的开源 Demo,个人非常喜欢这款 app 的 UI 风格,由此第二次模仿该 app 进行相关技术的学习与整合,

  • 废话不多说,直接上图 ,不论是商业项目还是开源 app,首先肯定是看眼缘

app_02.pngapp_03.pngapp_04.png
app_05.pngapp_06.pngapp_07.png
app_08.pngapp_09.pngapp_10.png

图片加载不出来?附上简书地址

项目结构

该开源项目采用组件化的方式开发,使用 MVVM + AndroidX + jetpack 组件为基本架构进行开发。

  • 项目结构图

app_12.png

  • app 架构图

app_os.png

app 功能介绍

当然由于是个人闲暇时间基于兴趣开发的,没有 UI 小姐姐 和测试小姐姐的陪伴,自然存在许些缺陷,当然写这个项目更多的是为了学习和锻炼 app 架构搭建的思维,希望能够帮到刷到这个博文的小伙伴,一起学习一起进步。

功能方面,想了想觉得还是没啥好说的���就是 UI 上显示的那样,相信在座的各位看官都是熟的不能再熟了,

app 使用技术介绍

  • Mvvm 架构设计 关于各种 mvx 的区别,我就不一一介绍了,上 Google 搜一下就好,关于项目中使用的 mvvm 设计封装,请移步 这里 ;代码是最好的老师,直接看源码吧。

  • Android X 这个也没啥好说的,就是 android Support 库的升级迁移版而已,现在新项目肯定都是直接 androidX 了,对 Android X 不熟悉的小伙伴,请移步 官方介绍 ;

  • jetpack 这个也没啥好说的,jetpack 就是 Google 推出的一套组件开发库,直接上图可能更好, 官方介绍

基本最主要使用的就是这些了 jetpack

app 第三方的依赖

  • RxEasyHttp RxEasyHttp 是一款 github 上开源的 RxJava2+Retrofit2 实现简单易用的网络请求框架,在本人发现并观摩其源码和设计原理后,发现着实写的不错,各种业务场景基本都设计到了,api 设计的也不错,当然也存在一些瑕疵,所以实际项目中还需根据自己的业��需求进行二次开发,推荐给各位看官RxEasyHttp

  • Loadsir loadsir 是一个 app 页面状态管理的第三方库,也非常得实用,用来控制 app 内的加载页面 、加载错误页面、空页面显示,点击重试等,从此告别自己控制网络加载失败等页面 show 、 hint 操作 和 ViewStub 等的控制, 可以基于自己的业务进行基类封装,具体请看项目 base 库中 activity 和 fragment 基类的封装。推荐给各位看官 Loadsir

  • mmkv mmkv 是腾讯开源的一个轻量级的存储库,用来代替 SharedPreferences 再好不过了,具体使用请看官方介绍

  • BaseRecyclerViewAdapterHelper 相信对于这个库大家应该是非常熟悉了吧,基本做 android 开发的都用过吧,不多说了

  • SmartRefreshLayout 这个库和上面那个库一样,用的非常多,

  • immersionbar 实现沉浸式状态栏的一个第三方库,也是非常常用

  • glide 图片加载库

  • rxpermissions 权限加载库

  • logger 日志打印库,打出来的日志格式看得比较舒服

  • utilcodex 一个 android 工具库,里面有非常多的工具类,当然实际项目用不到这么多,所以可以根据需求 copy 代码就好,不用集成

  • BannerViewPager 一个第三方轮播图的库,这个库比较新,所以 start 数比较少,但是挺好用,推荐

  • PagerBottomTabStrip 一个第三方导航库,app 中的底部导航就是基于这个库,挺好用,自带小红点管理

  • gsyVideoPlayer 一个第三方视频播放库,基于 bilibili 开源的 ijkplayer,可自定义性也还不错, 主要使用这个库实现类似微博等视频列表根据滚动判断自动播放,

项目 Api

声明 ,项目中所有 api 接口都是抓取自开眼 app,所有版权均归属开眼 app 所有,仅供学习借鉴使用,请勿用做商业用途,若有侵权,请联系作者删除。

首页

1.发现更多

2.每日推荐

3.日报精选

社区

1.推荐

2.关注

通知

1.主题

2.通知

3.互动

视频详情页

1.��关推荐

参数说明说明是否必须默认值
id当前播放视频的 id,从跳转页面视频 item 中获取
  1. 评论

  2. 请求地址 :http://baobab.kaiyanapp.com/api/v2/replies/video?videoId=186856

参数说明说明是否必须默认值
videoId当前播放视频的 id,从跳转页面视频 item 中获取

aok 下载

安装密码:darryrzhong

项目地址

欢迎关注作者darryrzhong,更多干货等你来拿哟.

请赏个小红心!因为你的鼓励是我写作的最大动力!

更多精彩文章请关注

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
机器学习是一种人工智能(AI)的子领域,致力于研究如何利用数据和算法让计算机系统具备学习能力,从而能够自动地完成特定任务或者改进自身性能。机器学习的核心思想是让计算机系统通过学习数据中的模式和规律来实现目标,而不需要显式地编程。 机器学习应用非常广泛,包括但不限于以下领域: 图像识别和计算机视觉: 机器学习在图像识别、目标检测、人脸识别、图像分割等方面有着广泛的应用。例如,通过深度学习技术,可以训练神经网络来识别图像中的对象、人脸或者场景,用于智能监控、自动驾驶、医学影像分析等领域。 自然语言处理: 机器学习在自然语言处理领域有着重要的应用,包括文本分类、情感分析、机器翻译、语音识别等。例如,通过深度学习模型,可以训练神经网络来理解和生成自然语言,用于智能客服、智能助手、机器翻译等场景。 推荐系统: 推荐系统利用机器学习算法分析用户的行为和偏好,为用户推荐个性的产品或服务。例如,电商网站可以利用机器学习算法分析用户的购买历史和浏览行为,向用户推荐感兴趣的商品。 预测和预测分析: 机器学习可以用于预测未来事件的发生概率或者趋势。例如,金融领域可以利用机器学习算法进行股票价格预测、信用评分、欺诈检测等。 医疗诊断和生物信息学: 机器学习在医疗诊断、药物研发、基因组学等领域有着重要的应用。例如,可以利用机器学习算法分析医学影像数据进行疾病诊断,或者利用机器学习算法分析基因数据进行疾病风险预测。 智能交通和物联网: 机器学习可以应用于智能交通系统、智能城市管理和物联网等领域。例如,可以利用机器学习算法分析交通数据优交通流量,或者利用机器学习算法分析传感器数据监测设备状态。 以上仅是机器学习应用的一部分,随着机器学习技术的不断发展和应用场景的不断拓展,机器学习在各个领域都有着重要的应用价值,并且正在改变我们的生活和工作方式。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值