分类

开源

聚焦于 GitHub 上优秀的 Android 开源组件推荐与剖析,深入探讨其应用与集成实践。从 AndroidX 库的核心模块(如 AppCompat、ConstraintLayout)到 JitPack 仓库的便捷依赖管理,提供详尽的使用指南、源码解读和优化案例。涵盖网络框架、UI 组件、数据库工具等热门项目,帮助开发者快速引入并提升项目效率。

共 79 篇文章

简单快速的对象存储库:Paper(一)
开源

简单快速的对象存储库:Paper(一)

简单快速的对象存储库:Paper(一)在GitHub上淘宝,最近又发现一个设计精巧而简单快速的存储库:Paper,可以考虑用来替代Preference。另一位牛人César Ferreira基于Paper,结合RxJava写了一个RxPaper2。GitHub:https://github.com/pilgr/Paper1、PaperPaper,正如其名:此库旨在让开发者存储对象数据,犹如在纸上写

1.8k
开源

EventBus源码分析​(四):EventBus中的几种设计模式

EventBus源码分析(四):EventBus中的几种设计模式再看一下EventBus,总结一下其中几个重要的设计模式,也是最常见的几种设计模式:单例模式、建造者模式、观察者模式。多看源码的好处之一就是能从优秀的代码里活学活用。1、单例模式单例模式(Singleton Pattern)是设计模式中最简单也是最常见的设计模式。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。单例模

2.0k
EventBus源码分析​(三):Subscribe注解详解
开源

EventBus源码分析​(三):Subscribe注解详解

EventBus源码分析(三):Subscribe注解详解前面把EventBus源码看了一遍,回头再看一下EventBus初步使用一文中提到的Subscribe注解,就会更加理解这其中三个属性的含义及作用:1、Subscribe注解Subscribe注解定义如下:Subscribe注解只能作用在方法上;在编译后不仅被保留,在运行时获取该注解。Subscribe注解有三个属性: ①threadMod

2.5k
EventBus源码分析​(二):事件分发及处理
开源

EventBus源码分析​(二):事件分发及处理

EventBus源码分析(二):事件分发及处理前面了解了EventBus的构造及事件订阅,接下来看看EventBus事件分发的实现原理。1、事件分发使用过EventBus的同学都应该知道,EventBus提供两个事件发送API方法:通过post(event)可以发送普通一次性事件外,另外一个方法是postSticky(event)可以发送粘性事件。所谓粘性事件其实和普通事件一样,只不过会将【粘性事

2.0k 1
EventBus源码分析​(一):构造及订阅
开源

EventBus源码分析​(一):构造及订阅

EventBus源码分析(一):构造及订阅通过一文EventBus初步使用,了解了EventBus的使用。光了解是不够的,深入源码才算熟悉。EventBus源码不多,适合开发者精读学习,仅代码就1800余行(使用SourceCounter统计)。1、构造EventBus实例项目开发中,一般使用EventBus类中的getDefault()静态方法获取全局总线实例。1.1、默认单例getDefaul

1.9k
EventBus初步使用
开源

EventBus初步使用

EventBus初步使用1、认识EventBus最早使用EventBus是在19年底,一位同学为了解耦代码引入的。深入学习一个开源库之前,得先了解它是干什么的,怎么用,现在记录一下。GitHub:greenrobot/EventBus官网:greenrobot.org/eventbus1.1、介绍在使用EventBus之前,为了解耦各个组件之间的通信,常见的一种方法是使用广播,更高效一点就用本地广

1.9k
在线代码查看神器:github1s
开源

在线代码查看神器:github1s

在线代码查看神器:github1s在GitHub上发现微软一个牛掰的项目:github1s,基于Node.JS、Yarn、Python等技术栈,实现“One second to read GitHub code with VS Code.”。和前段时间推荐的GitHub浏览插件:Git Master一样高效的在线浏览GitHub代码,但不需要任何插件的束缚,非常方便。项目地址:github.com

1.9k 2
开源

一个高效的Apk提取脚本

一个高效的Apk提取脚本开发者如何将手机上已安装应用的安装包提取导出到电脑上呢?以前是这样做的,只需要简单三步:①利用焦点拿到当前打开的应用包名(如果已经知道需要导出的应用包名,可以跳过此步)②知道应用包名后,通过pm获取安装包路径③最后就是将apk从手机中pull出来。注意如果路径包含'/base.apk'需要加一个'/'改成'//base.apk',后面写的脚本有这一步处理。还可以更快,更高效

2.2k 2
Gradle下载慢的解决办法
开源

Gradle下载慢的解决办法

Gradle下载慢的解决办法修改Gradle版本到最新或者新建的项目开始Sync同步时,很多开发者都可能遇到过Gradle下载失败的情况(如果没有,说明网比较好)。由于某种“神秘”的力量,阻止访问外网。这种情况就算fuck也无能为力,“梯子”也不是所有开发者都有的。有没有解决办法呢?最近查阅资料文档琢磨出来,总结记录一下。Android项目所用的Gradle配置信息在项目gradle/wrappe

2.3k
命令纠错工具:thefuck​
开源

命令纠错工具:thefuck​

命令纠错工具:thefuck逛知乎的时候发现一个非常有意思且实用的开源库:thefuck,目前在GitHub上已经有超过60k star。GitHub地址:https://github.com/nvbn/thefuck有趣的是这个库出现过一个issue:Fuck fucks itself,自己和自己干起来导致死循环。围观该issue:thefuck/issues/251。1、thefuck介绍开发

2.1k
开源

Retrofit之Converter详解

Retrofit之Converter详解Retrofit具有很高的扩展性,得益于预留的丰富接口,开发者可以根据业务自行实现接口。以Retrofit中的结果转换器Converter为例,了解其实现流程,最后根据业务自定义一个Converter。1、ConverterConverter接口中只定义了一个T convert(F value)接口方法,以及一个创建Converter实例的抽象工厂。Retr

2.2k
Retrofit源码流程分析
开源

Retrofit源码流程分析

Retrofit源码流程分析距离上次了解Retrofit的使用过去很长时间,必须得抽空看看Retrofit源码,了解Retrofit到底做了哪些工作,把网络请求封装的如此便捷。按开发过程中Retrofit的使用顺序看源码。1、Retrofit的构造在开始Retrofit流程分析之前,先搞清楚Retrofit实例的构造,涉及到后面请求流程中一些关键对象的初始化。1.1、构造者模式创建Retrofit

1.6k
Retrofit注解详细探究
开源

Retrofit注解详细探究

Retrofit注解详细探究在Retrofit使用入门一文中,了解了Retrofit的基本使用。现在继续深挖Retrofit的核心:注解,Retrofit通过注解的方式将HTTP网络请求转换成Java接口。当前使用的Retrofit版本是2.9.0,这个版本共有25个注解。按照注解作用的地方可以分为两类:一类是方法注解(METHOD),作用在方法上。一类是参数注解(PARAMETER),用在方法的

2.1k
了解开源协议
开源

了解开源协议

了解开源协议从事Android开发近两年,接触和使用过非常多的开源库。有图片加载相关的:Glide、Picasso、Fresco;网络请求相关的开源库:Volley、OkHttp、Retrofit等;还有其它工具类的开源库,比如:LeakCanary、Stetho等。为什么别的团队开发的软件代码我们可以直接拿来用在自己的项目上,避免浪费时间重复造轮子,并且不需要任何费用?这多亏了开源和开源协议。1

2.0k
开源

Retrofit使用入门

Retrofit使用入门每当深入学习一个优秀的开源框架前,先了解它是干什么,怎么用。从最基本的使用开始,不断探索深处的实现原理。用OkHttp作了铺垫,顺理成章的该学一下移动开发中另一个热门框架:Retrofit。 1、Retrofit简介Retrofit和OkHttp都出自大名鼎鼎的Square公司。算是亲兄弟了,OkHttp是哥哥,Retrofit是弟弟。关于OkHttp前段时间已经从头到尾看

1.8k