android 优秀框架整理,2021年我们程序员该如何进阶和规划

github:https://github.com/JakeWharton/butterknife

作者:JakeWharton ,也是square团队成员之一

使用:

dependencies {

compile ‘com.jakewharton:butterknife:8.6.0’

annotationProcessor ‘com.jakewharton:butterknife-compiler:8.6.0’

}

4.MPAndroidChart

一句话介绍:MPAndroidChart是一款图表框架

上榜理由:github上16.1K个star,以快速、简洁。强大著称的图表框架

官网地址 https://github.com/PhilJay/MPAndroidChart

github https://github.com/PhilJay/MPAndroidChart

作者:PhilJay

使用:

  1. 在AS中加入Gradle依赖

在根目录的 build.gradle上加入:

allprojects {

repositories {

maven { url “https://jitpack.io” }

}

}

在app的build.gradle上加入:

dependencies {

compile ‘com.github.PhilJay:MPAndroidChart:v3.0.2’

}

5. glide

一句话介绍:glide是一款专注于提供流畅划动能力的“图片加载和缓存框架”

上榜理由:15.9k个star,图片加载类框架排名第一的框架,google 在2014开发者大会上演示的camera app就是基于gilde框架开发的

github https://github.com/bumptech/glide

作者 Bump Technologies团队

使用:

repositories {

mavenCentral()

google()

}

dependencies {

implementation ‘com.github.bumptech.glide:glide:4.5.0’

annotationProcessor ‘com.github.bumptech.glide:compiler:4.5.0’

}

6.leakcanary

一句话介绍:一款内存检测框架,服务于java和android客户端

上榜理由:方便,简洁是leakcanary最大的特点,只需在应用的apllication中集成,就可以直接使用它;15.5k个star说明了它有多么受欢迎

github https://github.com/square/leakcanary

作者 square团队

使用:

dependencies {

debugCompile ‘com.squareup.leakcanary:leakcanary-android:1.5.1’

releaseCompile ‘com.squareup.leakcanary:leakcanary-android-no-op:1.5.1’

testCompile ‘com.squareup.leakcanary:leakcanary-android-no-op:1.5.1’

}

在 Application 中写入:

public class ExampleApplication extends Application {

@Override public void onCreate() {

super.onCreate();

if (LeakCanary.isInAnalyzerProcess(this)) {

// This process is dedicated to LeakCanary for heap analysis.

// You should not init your app in this process.

return;

}

LeakCanary.install(this);

// Normal app init code…

}

}

7.Android-Universal-Image-Loader

一句话介绍:曾经的图片加载框架王者,android开发老手都用过它

上榜理由:android端图片加载框架的老 大哥了,15.3k个star足以证明它的热门,UIL与gilde最大区别是可定制,UIL提供了大量配置方式,图片加载状态的回调(成功,失败,进行 中),加载动画等;以及提供了移动端图片加载框架的缓存思路:三级缓存策略 sd卡-内存-网络;值得注意的是,UIL以及两年未更新了,但笔者仍推荐各位使用!

github https://github.com/nostra13/Android-Universal-Image-Loader

作者 nostra13

使用:

下载地址 universal-image-loader-1.9.5.jar

8.EventBus

一句话介绍:EventBus是一款本地组件间通信框架

上榜理由:组件间通信框架star量第 一:14.8k,在大型项目的Activities,fragments,Threads,Services都可以看到它的使用场景,尽管 EventBus在向未创建的组件传递事件时有些局限,仅适合在“活着的”组件间传递消息,但仍不妨碍它活跃在各个大型项目各个场景里。

官网地址 http://greenrobot.org/eventbus/documentation/how-to-get-started/

github https://github.com/greenrobot/EventBus

作者 greenrobot

使用:

compile ‘org.greenrobot:eventbus:3.0.0’

9.zxing

一句话介绍:条码图像处理库

上榜理由:如果你用过二维码,你肯定已经间接使用过大名鼎鼎的zxing了。13.9K的star量,让它排在本榜单第九,实至名归,如果你有了解二维码的需求,不妨从了解、修改它源码入手。

github https://github.com/zxing/zxing

作者 Sean Owen

10.picasso

一句话介绍:强力的图片下载、缓存框架

上榜理由:本榜单出现的第三款图片类框架,不同的是picasso更强调图片下载,你可以将picasso集成进你的项目中,你也可以结合gilde和UIL与picasso,三者一齐封装至你的项目中,按需所用。

官网地址 http://square.github.io/picasso/

github https://github.com/square/picasso

作者 square团队

使用:

compile ‘com.squareup.picasso:picasso:2.5.2’

11.lottie-android

一句话介绍:一款可以在Android端快速展示Adobe Afeter Effect(AE)工具所作动画的框架

上榜理由:动画类框架第一名,github上 13.3k个star证明了他的优越性,利用json文件快速实现动画效果是它最大的便利,而这个json文件也是由Adobe提供的After Effects(AE)工具制作的,在AE中装一个Bodymovin的插件,使用这个插件最终将动画效果生成json文件,这个json文件即可由 LottieAnimationView解析并生成绚丽的动画效果。而且它还支持跨平台哟。

github https://github.com/airbnb/lottie-android

作者:Airbnb 团队

12.fresco

一句话介绍:一款可以管理图片内存的框架

上榜理由:github上12.8k个star,图片类排行榜第四名,facebook的出身证明了它并非是重复造的轮子,在管理图片内存领域上有着它的一片天地,渐进式加载、加载gif都是它与前三位相比独有的特性

官网地址: https://www.fresco-cn.org/

github https://github.com/facebook/fresco

作者 facebook

使用:

dependencies {

// 其他依赖

compile ‘com.facebook.fresco:fresco:0.12.0’

}

下面的依赖需要根据需求添加:

dependencies {

// 在 API < 14 上的机器支持 WebP 时,需要添加

compile ‘com.facebook.fresco:animated-base-support:0.12.0’

// 支持 GIF 动图,需要添加

compile ‘com.facebook.fresco:animated-gif:0.12.0’

// 支持 WebP (静态图+动图),需要添加

compile ‘com.facebook.fresco:animated-webp:0.12.0’

compile ‘com.facebook.fresco:webpsupport:0.12.0’

// 仅支持 WebP 静态图,需要添加

compile ‘com.facebook.fresco:webpsupport:0.12.0’

}

13.RxAndroid

一句话介绍:一款Android客户端组件间异步通信的框架

上榜理由:github上12.7k个 star,位居组件通信框架的第二名,仅在EventBus之后,如果要问两者的区别,Eventbus是用来取代组件间繁琐的 interface,RxAndroid是用来取代AnsyTask的,并不冲突;当然RxAndroid的优点并不仅限于此,更多优雅的实现,可以去官 网查阅!

github https://github.com/ReactiveX/RxAndroid

作者 JakeWharton

使用:

compile ‘io.reactivex.rxjava2:rxandroid:2.0.1’

compile ‘io.reactivex.rxjava2:rxjava:2.1.0’

14.SlidingMenu

一句话介绍:侧滑菜单栏框架

上榜理由:与Userval-Image- loader 齐名的上古神器框架——为你的app提供侧滑菜单栏的功能;github闪更有10.5k个star,证明了它的经久不衰,即使在Google推出了 NavigationDrawer,仍然没有减少开发
者对SildingMenu的拥簇,经典总是经得起考验的,这个上古神兽已经四年没有更新了;有太多 太多的app使用过它,这些都可以在软件的开源许可上看到!

github https://github.com/jfeinstein10/SlidingMenu

作者 Jeremy Feinstein

使用:

在gihub上fork源码,集成进项目中

15.PhotoView

一句话介绍:一款ImageView展示框架,支持缩放,响应手势

上榜理由:10.3k的star数量,位于图 片类框架排行榜第五位,PhotoView与前四位不同的是这次带来的是图片的展示能力,你一定好奇微信的头像点击放大是如何实现的,很多App的图片显 示响应手势按压是如何实现的,了解PhotoView,你一定会开心的!(笔者也不会告诉你ImageView的点击放大效果在Android的 sample也有)

github https://github.com/chrisbanes/PhotoV

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值