美文网首页Android开源appandroid开发技巧Android收藏集
Android 组件化开源app -开眼短视频(OpenEyes

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

作者: darryrzhong | 来源:发表于2020-03-01 21:04 被阅读0次

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

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

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

    效果图:

    app_02.png app_03.png app_04.png
    app_05.png app_06.png app_07.png
    app_08.png app_09.png app_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. 评论
    参数说明 说明 是否必须 默认值
    videoId 当前播放视频的id,从跳转页面视频item中获取

    aok下载

    安装密码:darryrzhong

    项目地址

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

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

    更多精彩文章请关注

    相关文章

      网友评论

        本文标题:Android 组件化开源app -开眼短视频(OpenEyes

        本文链接:https://www.haomeiwen.com/subject/qmpqkhtx.html