Android是一种主要为手机构建的操作系统。它用于智能手机和平板电脑等触摸屏移动设备。但如今,这些已用于 Android Auto 汽车、电视、手表、相机等。Android 一直是最畅销的智能手机操作系统之一。 Android OS 由 Google 于 2005 年收购的 Android Inc. 开发。今天,Android 仍然在全球范围内占据主导地位。它是一个拥有巨大应用市场的操作系统。
开发一个没有 Android 库魔法的 Android 应用程序总是一件很累人的工作。库有助于减少创建 Android 应用程序所需的时间、精力和金钱。以下是每个开发人员都应该知道的一些最好的库。
1. 匕首 2
Dagger 2 是最好的 Android库之一,它主要依赖于使用包含编译时间的Java注释处理器来计算和识别依赖项。牛逼匕首2比其他依赖注入框架,他的主要好处是,它的严格设计的实现手段,它可以在Android应用程序中使用。但是,在 Android 应用程序中使用 Dagger 时仍然需要考虑一些因素。使用 Dagger 创建 Android 应用程序的基本困境是操作系统本身实例化了几个 Android 框架类,如 Activity 和 Fragment,但如果 Dagger 可以生成所有注入的对象,它就可以很好地工作。或者,开发人员必须在生命周期方法中执行成员注入。
2. 改造
Retrofit 是由 square 为 Android 和Java构建的类型安全REST 客户端,旨在简化RESTful Web 服务的扩展。 Retrofit使用OkHttp作为系统管理层,并以此为基础。 Retrofit 自然地使用POJO (PlainOldJavaObject ) 序列化 JSON 反应,该POJO必须具有 JSON 结构的前沿特征。要序列化 JSON,我们需要一个转换器先将其转换为 Gson。 Retrofit 比其他库简单得多,我们不必解析JSON,它直接返回对象,但有一个缺点,它不提供从服务器加载图像的支持,但我们可以使用Picasso 。
3.毕加索
Picasso是一个开源的,也是 Android 中广泛使用的图像下载库之一。它由Square创建和维护。它是 Android 中功能强大的图像下载和缓存库之一。 Picasso 简化了从外部 URL 加载图像并在应用程序上显示的过程。例如,从服务器下载图像是任何应用程序中最常见的任务之一。它需要大量的代码才能通过 android 网络 API 实现这一点。通过使用毕加索,只需几行代码即可实现这一点。
4. 滑翔
Glide与 Picasso 类似,可以从许多来源加载和显示图像,同时还负责缓存并在进行图像处理时保持较低的内存影响。 Google 官方应用程序也在使用 Glide。 Glide 是由bumptech开发的Android 中的Image Loader库,是由Google 支持的库。它已被用于包括 Google I/O 2014 官方应用程序在内的许多 Google 开源项目中。它呈现动画 GIF 支持并处理图像加载/缓存。
5. Zxing
ZXing代表“斑马线”。它是一个用Java实现的条码图像处理库,具有到其他语言的端口。它支持一维产品、一维工业和二维条码。谷歌通过网络搜索使用 ZXing 在可索引的网络上获取数百万条条形码。它还创建了 Android 的 Barcode Scanner 应用程序的基础,并结合到 Google 产品和图书搜索中。
6. CAM 视图
CAMView是一个基于 ZXing 的安卓相机轻松访问库和安装的二维码扫描器。它是一个 android 库,具有简单而引人注目的组件,用于在应用程序中使用设备摄像头。该库包含一组组件(视图),可随时设置为布局文件,以便为开发人员提供对以下功能的即时访问:
- 立即显示来自设备摄像头的实时预览视频源
- 使用内置 ZXing 解码引擎扫描条码
- 执行您自己的相机实时数据处理
CAMView 采取并隐藏所有处理低级方法的杂乱作业和 mangles,如相机初始化、配置、流媒体、方向更改、设备和相机兼容性、线程等。只需为布局和应用程序设置适当的视图组件已准备就绪。
7. Stetho
Stetho 是一个复杂的 Android 应用程序调试桥。启用后,开发人员可以访问 Chrome 桌面浏览器本机部分的Chrome 开发人员工具功能。开发人员还可以更喜欢允许可选的dumpapp工具,该工具为应用程序内部提供强大的命令行界面。在不将其功能限制为仅网络检查、JavaScript 控制台、数据库检查等的情况下。
8. 黄油刀
ButterKnife是最好的 android 库之一,它包含android 视图和对字段和方法的回调。但不幸的是,这个工具现在已被弃用。开发人员正在切换到View Binding 。视图绑定是一项功能,可让您更有效地编写与视图交互的代码。一旦模块中允许视图绑定,它就会为该模块中可用的每个 XML 布局文件形成一个绑定类。绑定类的示例包含对在相应布局中具有 ID 的所有视图的直接引用。在大多数情况下,视图绑定替换findViewById 。