

GPL、LGPL、BSD、Apache Licence vesion 2.0、MIT。
这些协议我就不做过多解释,除了GPL协议需要注意外,GPL 协议规定使用了该开源库的代码也必须遵循 GPL 协议,也就是说也得开源,不适应于商业项目。其他协议多少也都会有些条件限制,但是影响不大,大家自行搜索了解就可以了。目前为止 MIT 应该算是用的最多的开源协议了。
其实开源界还有一个奇葩的协议叫「WTF」协议,协议名称是:「DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE」,言外之意就是「他妈的想干啥干啥协议」,是不是碉堡了?如果你们不小心在哪个开源项目有见过这个协议,不要大惊小怪,真有这个协议的!
6. 综合
经过上面的分析,就剩 OkHttp 与 Retrofit 两个最优选择了,最后我们来仔细看看这两个库有什么区别。
通过文档我们了解到:
OkHttp 是一个 Java 和 Android 平台的 Http 请求库,非常高效,支持 SPDY、连接池、GZIP 和 HTTP 缓存。默认情况下,OKHttp 会自动处理常见的网络问题,像二次连接、SSL 的握手问题。
Retrofit 是一套 RESTful 架构的 Android 和 Java 平台 Http 请求库的客户端实现,基于注解,提供JSON to POJO(Plain Ordinary Java Object,简单Java对象),POJO to JSON,网络请求(POST,GET,PUT,DELETE等)封装。
但是如果你的应用程序中集成了 OkHttp,Retrofit 默认会使用 OkHttp 处理其他网络层请求。
所以一句话如果你想让你的网络请求写的更优雅那推荐使用 Retrofit ,尤其是跟 RxJava 结合起来更好用,否则直接使用 OkHttp 一样是可以的。
你要问我们项目使用了什么网络库?我们有好几个项目,其实用的最多的是 Volley,因为如果是Google官方推出的项目我们一般都是优先使用的,毕竟官方出的总不会太差吧。
总结
以上只是以一个 Http 库请求的示例来教大家如何选择一个最优的开源项目,其他类别的开源项目一样适用。我想告诉大家的是,开源项目的选择永远没有一个最好的,你只有在综合评估的指标下,选择一个相对来说成熟并且适合你自己的就好了。
传真:0755 - 2799 6625
投诉:133-2299-1235
邮箱:sale@inmiga.com