NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

今年新鲜出炉的 30 个 Android 库,你关注了吗?

  • 2017-10-19
  • 本文字数:3582 字

    阅读完需:约 12 分钟

1. MaterialStepperView

它是用 Material Design 实现 Steppers 的。

目前,Stepper 只有垂直视图,但将来会有更多的风格。你可以尝试一下,如下图:

你可以自定义 normal/active 两个状态的颜色,完成图标,开启动画并设置动画时长。可通过 Github 上的设置项和样式查阅所有设置项。

该库支持API 17+,详情请查阅 wiki 文档

2. MultiSnapRecyclerView

这是分屏滚动的 Android 库。
MultiSnapRecyclerView 为 RecyclerView 提供了分屏功能。

目前提供的功能有:

  • start, endcenter三个位置的吸附,
  • snap count 指定要分屏的数量,
  • 支持水平和垂直分屏,
  • 滚动时的回调。

3. Garland View for Android

该库可实现如下的布局:

GarlandView 外部是一个水平滚动的视图,视图内的每一个子视图可垂直滚动。

你可以在 README 中找到其他重要信息。还有一个示例 App。该库支持 API 19 及更高版本。

4. VegaLayoutManager

这是一个自定义的布局管理器——滚动时缩小并淡出头部。这是受到 Dribble 项目的启发。

5. ExpandableLayout

这个库的名字不言而喻,它是一个基于LinearLayout的可扩展的布局。

README 里含有你启动时需要的所有信息,另外,还有一个示例 App 可以帮助你快速跳转到代码中。

6. SwipeBackLayout

SwipeBackLayout允许你使用手势返回上一个界面。

你可以设置滑动方向,如从左到右、从右到左、从顶部到底部、从底部到顶部。

你还可以设置是否只能从边缘滑动。

SwipeBackLayout只能包含一个子布局,例如:

  • LinearLayoutRelativeLayoutFrameLayoutTableLayout等。
  • ScrollViewHorizontalScrollViewNestedScrollView等。
  • RecyclerViewAbsListView(ListView) 等子类。
  • ViewPagerWebView等。

该项目里面有一个详细说明的文档、示例 APP 和一个 APK。

7. SmartCropper

这是一个可以智能剪裁图像的库,可以识别边框并修正裁剪后的图像,适用于身份证、名片、文件等其他图片文件的裁剪。

特征:

  • 以智能的方式裁剪图片,还可以识别边框;
  • 支持拖动、放大效果以提升定位体验;
  • 使用透视变换裁剪, 可以修正先前裁剪的图片;
  • 支持多种 UI 设置,如辅助线、蒙版、设置锚点、放大等效果。

目前,此库采用优化点算法,CropImageView具有选择放大效果, 而且它可以使用CropImageView XML来进行设置。

8. Date Range Picker

Date Range Picker 是具有改进 UI 的自定义日期范围选择器。

项目的简介写得很好,易于理解。

9. StoriesProgressView

我们都知道 Facebook 和 Instagram 展现在他们 App 上的 Stories ,这是介绍StoriesProgressView的一个库,它可以扩展LinearLayout和允许你添加以下视图。

该项目包含一个简短但详细的 README 以及示例 App。

10. CosmoCalendar

这是一个可以自定义日历的库,它可以提供很多功能和 UI 设置,例如:

  • 改变日历方向;
  • 自定义文本颜色;
  • 设置类型和颜色;
  • 定义导航按钮等;
  • 还有很多其他功能;

11. Reflow Text Animator

相信大家都听过 Plaid app ,这是由 Shazam 工程团队开发的。

它是 Plaid’s ReflowText 的端口,无论它们的大小或风格怎样,都可以轻松地在同级的 TextView 之间进行转换。

这个库很容易使用,快去试试吧!

12. AdaptiveIconPlayground

这不是一个库,而是由 Nick Butcher 开发的用于试验自适应图标的 AndroidApp。根据 README:

此应用程序可以从已安装的 App 中查找支持自适应图标的 App,并将其显示在网格中,然后你可以切换不同的蒙版形状以匹配不同设备的显示效果。

目前提供两种视觉效果:

  • 滚动效果;
  • 触摸时的尺寸缩放视差效果;

13. Tivi

Tivi 是跟踪电视节目的 App,它与 Track.tv 相连接,它的开发者是 Chris Banes,虽然这项开发工作仍在进行中,但它使用的都是最前沿的组件、库和工具,其中包括 Kotlin、RxJava 2、所有架构组件(Room,LiveData 和 Lifecycle-components)。

14. RxIdler

这是 Espresso 的IdlingResource
它的开发者是 Square Engineering
它支持 RxJava 1 和 RxJava 2,祝你用得愉快!

15. MRichEditor

这是一个丰富的文本编辑器(基于 summernote)。
它支持多种功能,包括粗体、斜体、下划线、快捷键、标题(包括六级标题)、段落、引用,有(无)序列表、代码、水平规则、链接、图像,对齐方式(居中、两端对齐、左对齐、右对齐)、下标、上标、字体名称和大小、缩进、减少缩进、撤消 / 还原。

在这种情况下,你需要仔细观察示例 App,因为它几乎没有文档供你参考。

16. Android Clean Architecture Boilerplate

Buffer 团队和 Joe Birch 开发的示例 App 展示了一种 Android 应用程序的干净架构。

创建此样板的原因:

实验模块化;

分享一些干净架构实现方式;

一开始采用干净架构能应对未来复杂的项目需求。

该项目的 UI 和单元测试都是用 Kotlin 编写。

它的文档里有详尽的介绍,非常适合想学习的开发者,力荐!

17. RxJava2Debug

使用过 RxJava 会发现有时很难读取异常,很难在 Rx 流中定位到问题。这就是为什么这个库被创建的原因。你可以在 README 中阅读更多关于的内容。

这个库的功能有:

  • 生成堆栈轨迹
  • 过滤堆栈轨迹

18. Resizer

Resizer 是一个轻量级的,而且易于使用的 Android 库,用于图像缩放。它允许你将图像文件放大或缩小的同时,保持宽高比。

这个项目的灵感来自于 Compressor

说明书:

Minimum SDK: API 21

默认设置:
targetLength: 1080
quality: 80
outputFormat: JPEG
outputDirPath: the external files directory of your app

支持的输入格式:
BMP
GIF
JPEG
PNG
WEBP

支持的输出格式
JPEG
PNG
WEBP

支持的图像质量范围:0~100
值越大,图像质量越好同时图片越大
PNG,无损格式,会忽略该设置

19. FaceDetector

该库允许你在相机里预览图片时,实时检测人脸。它与 Fotoapparat 库非常相似,但它也支持其他相机库和源。

它的使用过程十分简单,而且项目记录相当详细。

20. RxGps

它的开发者是 Florent Champigny ,它很容易找到我们各自的定位。
它兼容 RxJava2,它还自动申请 GPS 的运行权限,并查看当下的服务是否适合您。

21. MapMe

MapMe 是一个搭配地图功能使用的 Android 库。
MapMe 将适配器模式带到 Maps,简化了标记和注释的管理。

MapMe 与 Google Maps 和 Mapbox 配合使用,README 里的内容很详细,而且它是用 Kotlin 编写的。

22. RevelyGradient

该库用于颜色渐变管理。

您可以用 Java 或 Kotlin 编写它,项目附带的说明文档很简短,但足够你能够使用它。

23. LiteUtilities

这是一个用 Kotlin 编写的库,它有助于从代码中消除样板。目前它的功能有:

  • RecyclerUtils —— 省去设置适配器的麻烦,现在只需 4 行代码就可以设置好适配器。
  • ScrollUtils —— 使用 RecyclerView 或 NestedScrollView 时,可以以轻松隐藏 / 滚动显示 FloateActionButton。
  • ToastUtils —— 用于创建 toasts。
  • SPUtils —— 用于共享选项的简单 DSL。
  • ValidatorUtils —— 可以快速而轻易地进行文本检验。
  • LogUtils —— 简单易用的 Android 日志记录。

24. KOIN

KOIN 是一个使用 Kotlin 来编写的依赖注入框架,它的功能是能够推动做事的进度。

据作者介绍,它

  • 没有代理 / CGLib
  • 没有代码生成
  • 没有内省

它的说明文档写得很棒,有示例和 wiki ,还有联系方式。

25. koptional

是那些总试图让自己的安全系统更加顺畅的 Kotlin 极简主义者的理想选择。

作者给出的理由是:

由于具有空值安全特性,Kotlin 不需要可选值类型。但是有 RxJava2 这样的 APIs 和库不接受空值导致 Kotlin 仍然需要支持可选值类型

大多数情况下可以使用sealed class来表示空值,然而像向 Rx 流传递String?这种情况,可选值类型是更好的选择。

26. Parallax

这是一个模拟 Apple TV 视差图标的库。

它的 README 写得非常好,值得一试。

27. droid-vizu

Droid-vizu 旨在通过轻松交换渲染器来获得酷炫效果, 从而提供定制的可视化效果.

28. Drone

这不是 Android 库,而是由 CésarFerreira 提供的库的管理者。它是由于对 java 社区的嫉妒,因为他们的快速可靠的依赖管理器。因此,您只需执行以下操作:谷歌搜索一个库,检查,阅读文档等。

drone add creator/library module

例如:

drone add jakewharton/butterknife

29. From-design-to-Android-part2

这是一个涵盖在 Android 上创建整洁 UI 的项目。这一次,SaúlMolinero 涵盖:

  • 使Alex LockwoodShapeShifter工具
  • AndroidVectorDrawables
  • ScaleDrawables
  • 自适应图标等。

30. Reagent

Reagent 是 Jake Wharton 总结的未来响应式库的体验。请不要使用。

希望你很享受以上提到的库,如果你喜欢我的文章,别忘了分享给其他人哦!

当然,如果你想追踪我最新的文章和动态,可以在 Medium Twitter 上关注我,也可以在 LinkedIn 上找到我的信息。

原文链接: https://medium.com/@mmbialas/30-new-android-libraries-and-projects-released-in-summer-2017-which-should-catch-your-attention-d3702bd9bdc6


感谢胡红星对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017-10-19 19:003996
用户头像

发布了 83 篇内容, 共 46.9 次阅读, 收获喜欢 187 次。

关注

评论

发布
暂无评论
发现更多内容

基于SLO告警(Part 4):开源项目 pyrra 使用

Grafana 爱好者

云原生 可观测性 Prometheus SRE SLO

从 JDK 9 到 19,我们帮您提炼了和云原生场景有关的能力列表(上)

阿里巴巴云原生

阿里云 云原生

Java 中如何限制方法的返回时间

HoneyMoose

C++ 友元与运算符重载那些事

王玉川

c++ 编程语言 运算符 重载 friend

万里数据库加入龙蜥社区,打造基于“龙蜥+GreatSQL”的开源技术底座

OpenAnolis小助手

开源 龙蜥社区 greatsql社区 万里数据库 生态适配

数据同步gossip协议原理与应用场景介绍

京东科技开发者

架构 Consul fabric Gossip协议 企业号 2 月 PK 榜

10 亿月活用户下,快手基于 Dragonfly 的超大规模镜像分发实践

阿里巴巴云原生

阿里云 容器 云原生

Java高手速成 | Hibernate的配置文件与JPA API的基本用法

TiAmo

hibernate jpa api 网关

架构实战营模块5 高性能高可用计算作业

西山薄凉

「架构实战营」

基于Verilog HDL的状态机描述方法

timerring

FPGA

推进行业生态发展完善,中国信通院第八批RPA评测工作正式启动

王吉伟频道

RPA 机器人流程自动化 中国信通院 RPA评测 RPA产业推进方阵

核心应用实现云原生改造升级,波司登数字化战略加速落地

阿里巴巴云原生

阿里云 云原生

重磅发布丨《云原生实战指南》助力企业上云实践!

阿里巴巴云原生

阿里云 云原生实战

设计「业务」与「技术」方案

Java 架构 技术 业务

图片竟能直接生成逼真音效?这AI模型也太神奇了吧!

科技热闻

CleanMyMac X2023电脑最新版本更新内容

茶色酒

CleanMyMac X CleanMyMac X2023

试试 IntelliJ IDEA 新的 UI

HoneyMoose

IntelliJ IDEA 撤销和反撤销

HoneyMoose

IntelliJ IDEA 修改只读模式和可写模式

HoneyMoose

2022阿里云技术年报:基础产品篇

阿里巴巴云原生

阿里云 云原生 基础产品

OpenMMLab图像分类实战代码演示

IT蜗壳-Tango

CV OpenMMLab 图片分类

vue实现一个鼠标滑动预览视频封面组件(精灵图版本)

JYeontu

Vue 视频

技术服务深耕本地市场:阿里云在日本的探索与实践|国家经理专栏

阿里巴巴云原生

阿里云 云原生

架构训练营模块七作业

张建闯

架构实战营

Flomesh Ingress 使用实践(四)TLS 透传

Flomesh

Kubernetes 服务网格 ingress Pipy 流量管理

全景剖析阿里云容器网络数据链路(五):Terway ENI-Trunking

阿里巴巴云原生

阿里云 容器 云原生

Higress + Nacos 微服务网关最佳实践

阿里巴巴云原生

阿里云 云原生 nacos Higress

突破边界:“超融合+”带来的商业化精益之路

脑极体

应用纳管和灰度发布:谐云基于 KubeVela 的企业级云原生实践

阿里巴巴云原生

阿里云 容器 云原生 KubeVela

架构训练营模块8

张建闯

架构实战营

C# 如何部分加载“超大”解决方案中的部分项目

newbe36524

C# Docker Kubernetes

今年新鲜出炉的30个Android库,你关注了吗?_Android/iOS_Michal Bialas_InfoQ精选文章