你好,游客 登录
背景:
阅读新闻

Java开发者应当知道的7个最佳Android开发库

[日期:2016-05-25] 来源:安卓-伯乐在线  作者:伯乐在线 - leo199207 翻译 [字体: ]

  这篇博客介绍了java开发者

  至少应该知道的7个android库。android开发人员看这篇博客也会有所启发,看看是不是有一些你可能不知道的库。

  Android 和 Java有非常相似的 API 。它们相似到前段时间甲骨文因为专利问题起诉了谷歌,不过我们在这里不讨论这些问题。自然,能够开发两个平台上都适用的架构和库是Android 和 Java相似的一个优点。这样开发人员就能够创建两个平台上通用的库和工具。

Android

  我们从一个在Android界最有名的库开始介绍。

  Dagger

  Dagger 是一个不带附属项目的轻量级依赖注入库。它是安卓系统上最有名最被广泛使用的依赖注入库。对于 Java 和 Android 它都是简单且快速的。有两部分:Dagger库(100kb)和Dagger 编译器。

  Dagger 库包含了所有必要的逻辑和注释。它还使用标准 javax.inject 注解,让你的代码在不同依赖注入框架之间(例如 Spring 和 Guice)具有可移植性。 Dagger 是最简单和最轻便的 DI 框架之一。它不包含那些较大型框架通常带的花哨特征,它很快并且能能够完成它的工作。如果你想用简单、不带其它东西的依赖性注入框架,Dagger是绝对值得考虑的。

  Dagger 由Apache License2.0授权许可,Square 和 Google 率领开发,这里可以获取资源: http://square.github.io/dagger/ 。

  LeakCanary

  你知道吗?煤矿工人在下矿时通常会带一着一只金丝雀,如果煤气泄漏严重的话金丝雀会先死,这样工人就能够依据此信号离开。 LeakCanary 的原理跟这个很像,只不过不是用来检测煤气泄漏,而是为 Android 和 Java 检测内存泄漏。它通过在你的代码中加入几行 Java 代码能够很容易的检测出导致内存泄漏的对象。这个库免费易用。跟 Dagger 类似, LeakCanary 也是由 Square率领开发的。

  同样的, LeakCanary 由 Apache License2.0授权许可,这里能获得资源:https://github.com/square/leakcanary 。

  ZXing

  条形码和二维码码已经成为机器可识别数据世界的基本标配。 ZXing 已经出来有段时间了。Zxing 最初是用Java语言编写的,它能够读取、创建很多不同平台上的条形码,现如今它已经被转换为不同的语言。这个库开发出来已经有一段时间并且具有良好的用户基础。现在你的智能手机上的二维码解析器有可能就用的这个库。它运作良好且有良好的历史记录。

  ZXing 由 Sean Oven, Daniel Switkin, ZXing 团队开发, Apache License 2.0 授权许可,在这里能找到资源: https://github.com/zxing/zxing

  Retrofit

  这是由Square开发的另一个库!这些人非常擅长写 Android 库对不对! Retrofit能够让你的 REST API 变成 Java 接口。它对于 Android 和 Java 都是类型安全的REST客户端。使用Retrofit ,你用纯Java代码就能很好的跟几乎任何 RESTful API进行通信。就像 Android 库通常的特点:轻量级且易用。

  Retrofit 是由 Square 率领开发的,由 Apache License 2.0 授权许可。这里能看到更多相关信息: http://square.github.io/retrofit/

  Libphonenumber

  在需要解析和格式化电话号码时,开发人员

  找不到多少又好又免费的解决方法。 幸运的是,Google团队退出了一个叫做 Libphonenumber 的库。这个库可以算是解析、验证和格式化电话号码中最好最全面的库。虽然它的名字有点饶舌,但是它的功能相当棒!

  这是个非常简单且容易使用的 API 并且已经转换成了其他能够脱离Java虚拟机的语言,像 C# 和 PHP。 Libphonenumber 由 Google 率领开发,由 Apache License 2.0 授权许可。如果要下载,请看这里:

  https://github.com/googlei18n/libphonenumber

  Tape

  现在要介绍的是 Square 的另一个库。 Tape 仅仅是队列处理的类集合。它处理不稳定环境中的数据流和数据下载非常棒。Tape 能够代替你手动编写队列处理的大量工作。如果一些处理失败了, Tape 会自动再次执行命令或操作。同样的,所有中间结果都会被自动缓存,这个特点非常实用。

  Square的这些善良的人也同样为这个库取得了 Apache License 2.0 的授权许可。这里能找到库的资源:https://github.com/square/tape

  Jitpack.io

  Jitpack.io 是由 Streametry 公司的团队开发的库。它能够在情况下off the hook情况下编译项目然后发布到 Maven 库中。很酷对不对?它能够省下构造依赖的时间和麻烦。当用项目依赖于Maven时这是发布任何Github项目最简单的方法。

  这里可以找到Jitpack资源: http://jitpack.io/ . Jitpack 使用自定义的使用许可。

  结论

  从上面的几个例子可以看出,大多数可用的新 Android 库和工具

 

  表明我们需要能在不稳定环境中运行的轻量级且简单的库,这样才有可能满足每个人需要。Android 和 Java 之间也存在一些区别,代码通常在 Android 和 Java 之间相互转换, 如果你能够写出两者通用的代码,何乐而不为呢?





收藏 推荐 打印 | 录入:elainebo | 阅读:
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数
点评:
       
评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款