Handler的消息还有异步的?怎个异步法?UI线程的Handler执行时不是统一在UI线程吗,怎么能异步?如果你有这样的疑问,那你需要看看源码咯。
背景
jgit是Eclipse团队推出的一个使用java语言操作git命令的一个框架。在所有的Eclipse软件中封装了jgit工具,由于它的便捷与高效,因此开发团队将其单独剥离出来,成为一个可以供其他项目引用框架。
项目地址:https://eclipse.org/jgit/
什么是泛型
泛型,即“泛化类型”。
那“泛化类型”是什么?先从参数说起,我们都知道参数是方法中要传递的值,定义方法填写的是形参,调用方法传入的是实参。泛化类型就是将原来具体的类型抽象化,此时类型也定义成参数形式,然后在使用/调用时传入具体的类型
背景
Clean Architecture是由Uncle Bob在2012年提出的一种架构模式。

Clean架构的目标是关注点分离,实现解耦。上面的洋葱图中,将软件分为了很多层,层层包裹,其中有一个重要的依赖规则:源码依赖方向只能由外向内。内圈不能依赖外圈,即内圈相对来是业务核心,中间层是业务转换模块,外部则是可以替换的部分。
前言
自定义gradle插件是Android开发工程师的必备技能之一。通过gradle打包的机制,可以在打包过程中插入自定义的task,实现我们想要的功能。例如对于class文件的hook或者资源文件的修改。
下面以开发的png转webp插件为例,介绍一下自定义gradle插件的开发过程,以及需要注意的点。本文主要从gradle构建的生命周期和Android打包时主要的task讲起。万丈高楼平地起,介绍了基础知识点有助于后续的开发设计。
监听app前后台切换对于App来说是一个比较实用的功能。一些功能的实现离不开前后台切换的时机,比如App进入前台检查剪切板、统计用户在线时间等等。下面本文就从前后台切换监听说起。
最近项目中需要使用加密传输用户IMEI信息。因此对于加密解密做一次整理小结
人都是视觉动物,一个App的动效做的炫酷,优雅,是很吸引用户使用的。
最近使用Monkey做自动化测试,但是手机一旦开始就像吃了炫迈口香糖一样根本停不下来!
我们可以通过ImageView的ScaleType属性来实现图片在ImageView的展示方式。通过阅读源码可知ScaleType设置是通过ImageView中的Matrix变换得来的。在此做一个简单的文字记录