千锋教育-做有情怀、有良心、有品质的职业教育机构

400-811-9990
手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

上海
  • 北京
  • 郑州
  • 武汉
  • 成都
  • 西安
  • 沈阳
  • 广州
  • 南京
  • 深圳
  • 大连
  • 青岛
  • 杭州
  • 重庆
当前位置:大连千锋IT培训  >  技术干货  >  JetPack到底是什么?

JetPack到底是什么?

来源:千锋教育
发布人:xqq
时间: 2023-10-16 04:11:47

一、JetPack

介绍

JetPack:2018年谷歌I/O 发布了一系列辅助android开发者的实用工具,合称Jetpack。以帮助开发者构建出色的 Android 应用。

Jetpack 是一套库、工具和指南,可帮助开发者更轻松地编写优质应用。这些组件可帮助你遵循优异做法、让你摆脱编写样板代码的工作并简化复杂任务,以便你将精力集中放在所需的代码上。

内容

JetPack分类有四种,分别是Architecture、Foundationy、Behavior、UI。

①Architecture(架构组件)

Architecture指的是架构组件,帮助开发者设计稳健、可测试且易维护的应用。架构组件可以说是对应用开发帮助最大的组件,本系列也是围绕着架构组件进行讲解。

DataBinding:以声明方式将可观察数据绑定到界面元素,通常和ViewModel配合使用。

Lifecycle:用于管理Activity和Fragment的生命周期,可帮助开发者生成更易于维护的轻量级代码。

LiveData: 在底层数据库更改时通知视图。它是一个可观察的数据持有者,与常规observable不同,LiveData是生命周期感知的。

Navigation:处理应用内导航。

Paging:可以帮助开发者一次加载和显示小块数据,按需加载部分数据可减少网络带宽和系统资源的使用。

Room:友好、流畅的访问SQLite数据库。它在SQLite的基础上提供了一个抽象层,允许更强大的数据库访问。

ViewModel: 以生命周期的方式管理界面相关的数据,通常和DataBinding配合使用,为开发者实现MVVM架构提供了强有力的支持。

WorkManager: 管理Android的后台的作业,即使应用程序退出或设备重新启动也可以运行可延迟的异步任务。

② Foundationy(基础组件)

基础组件提供横向功能,例如向后兼容性、测试、安全、Kotlin 语言支持,并包括多个多个平台开发的组件。

Android KTX:优化了供Kotlin使用的Jetpack和Android平台API。帮助开发者以更简洁、更愉悦、更惯用的方式使用Kotlin进行Android开发。

AppCompat:帮助较低版本的Android系统进行兼容。

Auto: 开发Android Auto应用的组件,提供了适用于所有车辆的标准化界面和用户交互。

检测:从AndroidStudio中快速检测基于Kotlin或Java的代码。

多Dex处理:为具有多个Dex文件应用提供支持。

安全:安全的读写加密文件和共享偏好设置。

测试:用于单元和运行时界面测试的Android 测试框架。

TV: 构建可让用户在大屏幕上体验沉浸式内容的应用。

Wear OS:开发Wear应用的组件。

③ Behavior(行为组件)

行为组件可帮助开发者的应用与标准Android服务(如通知、权限、分享)相集成。

CameraX:帮助开发简化相机应用的开发工作。它提供一致且易于使用的界面,适用于大多数Android。设备,并可向后兼容至Android 5.0(API 21)。

DownloadManager:处理长时间运行的HTTP下载的系统服务。

媒体和播放:用于媒体播放和路由(包括Google Cast)的向后兼容API。

通知:提供向后兼容的通知API,支持Wear和Auto。

权限:用于检查和请求应用权限的兼容性API。

设置:创建交互式设置,建议使用AndroidX Preference Library库将用户可配置设置集成到应用中。

分享操作:可以更轻松地实现友好的用户分享操作。

切片:切片是一种UI模板,创建可在应用外部显示应用数据的灵活界面元素。

④ UI(界面组件)

Animation and Transition:该框架包含用于常见效果的内置动画,并允许开发者创建自定义动画和生命周期回调。

Emoji Compatibility:即便用户没有更新Android系统也可以获取最新的表情符号。

Fragment:组件化界面的基本单位。

布局:用XML中声明UI元素或者在代码中实例化UI元素。

调色板:从调色板中提取出有用的信息。

延伸阅读:

二、为何需要Mock

Mock的字面意思是“模仿、造假”,在测试技术里是指对于某些不容易获取的对象或不容易执行的过程,用一个虚拟的对象或过程来作为替代品使测试程序得以正常运行。

应用程序中,方法之间难免存在耦合,待测试的方法为了完成其功能需求难免会调用其他方法,而被调用的方法可能由于以下原因,无法在测试时可以正常使用:

1.被调用的方法,由其他人开发,目前尚未实现,只是个接口;

2.被调用的方法依赖于运行环境,测试环境无法正常运行,如网络服务,数据库服务等。

这个时候如果想测试该方法,我们需要绕过其内部调用的这些不可运行的方法。如何绕过呢?就是通过Mock这些方法来完成。

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。

猜你喜欢LIKE

Web渗透文件上传有哪些漏洞?

2023-10-16

mysql索引是怎么实现的?

2023-10-16

redis缓存数据,内存占满,怎么解决?

2023-10-16

最新文章NEW

PHP数组具的特性有哪些?

2023-10-16

列式数据库与行式数据库主要区别有哪些?

2023-10-16

Mysql一次读取数据的最小单位是什么?

2023-10-16

相关推荐HOT

更多>>

快速通道 更多>>

最新开班信息 更多>>

网友热搜 更多>>