为了账号安全,请及时绑定邮箱和手机立即绑定

Jetpack全系列组件实战短视频App

2020.01.13 10:06 5736浏览
Java架构师-十项全能
点击查看
¥8800.00 6166.00 (历史最低价,仅限618活动期间)

为什么要学习Jetpack

  • Jetpack是Google为解决Android开发碎片化,打造成熟健康生态圈提出的战略规划,是Google对Android未来提出的发展方向。

  • Jetpack现已成为面试必问,各大厂+github都已经在拥抱适配Jetpack了。

  • 谷歌力推一统开发规范,support库停更
    所以我认为只要是安卓开发的同学,都或者或晚的要拥抱Jetpack。

Jetpack核心组件介绍

  • Navigation:强大的APP导航组件,能够为Activity,Fragment,Dialog,FloatWindow提供导航。

  • Paging:强大的分页库组件,能够自动化加载页面初始化和分页(向前分页,向后分页)数据。

  • LiveData:基于生命周期的消息订阅组件,不会发生内存泄漏,不用反注册。

  • Room:灵活易用的数据库组件,对sqlite做了上层包装,无缝对接LiveData。

  • ViewModel:数据共享组件,能够实现数据的存储和页面间数据共享。

  • CameraX:强大的基于生命周期的相机控制组件。轻松定制视频录制&拍照功能。

  • DataBinding:空安全的数据与View双向绑定组件,减少异常率

  • WorkManager:强大的后台任务,异步任务管理组件

  • Lifecycles:生命周期管理组件
    Jetpack包含了非常多的优秀的组件,但是目前国内关于Jetpack的文章质量良莠不齐,或者说直接翻译英文的比较多,难以引用到项目中。更别谈改造灵活应用了。

  • 包括但不限于以下问题,目前都在网络上都难以搜索到优秀的解决方案。
    1.PagedList如何实现列表增删改?
    2.PagingList分页失败后,如果接管列表分页?
    3.LiveData如何设计一款0反射的事件总线?
    4.Navigation如何自动化构建App 路由导航
    5.Behavior如何接管CoordinatorLayout中组件的布局?
    6.Room数据库如何设计一套缓存框架?
    7.ViewModel如何实现数据共享?
    8.视频秒播,无缝续播?
    9.登陆拦截?
    10.ViewPager2如何按需预加载页面?

  • 本人经历了4个月的时间,潜心研究Jetpack,基于本人的理解,使用Jetpack全家桶组件开发了一套前后端打通的高仿短视频应用的APP–皮皮虾。旨在帮助大家在短时间内高效的掌握Jetpack的工作原理和一些搜索不到的用法。

项目架构

无论是MVC,MVP,MVVM 都有或多或少的问题存在,都是经过开发者改造之后适合自己项目情况的一种开发方式.然后Jetpack MVVM 是谷歌退出的一套适用于所有App的开发架构
image.png

项目功能

image.png

项目效果图

image.png

点击查看更多内容

本文原创发布于慕课网 ,转载请注明出处,谢谢合作

3人点赞

若觉得本文不错,就分享一下吧!

评论

相关文章推荐

正在加载中
架构师
手记
粉丝
259
获赞与收藏
26

关注TA,一起探索更多经验知识

作者相关文章
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消