协程可以让我们使用顺序的方式去写异步代码,而且不会阻塞UI线程。Kotlin 协程提供了一种全新处理并发的方式,你可以在 Android 平台上使用它来简化异步执行的代码。协...
协程可以让我们使用顺序的方式去写异步代码,而且不会阻塞UI线程。Kotlin 协程提供了一种全新处理并发的方式,你可以在 Android 平台上使用它来简化异步执行的代码。协...
由于文章涉及到的只是点比较多、内容可能过长,可以根据自己的能力水平和熟悉程度分阶段跳着看。如有讲述的不正确的地方劳烦各位私信给笔者,万分感谢。 kotlin协程的关键知识点 ...
前言 笔者在写这篇文章的时候纠结了很久,不知道该以怎样的形式去讲解kotlin协程知识。笔者以前在学习的时候,也白嫖过各种各样的知识,看过很多文章,大概能够总结为三种: 讲的...
if语句 预期目标 编码实现 验证结果 小结 通过上面的示例,我们注意三个知识点: 如何使用ClassWriter类。 在使用MethodVisitor类时,其中visitX...
Java虚拟机的指令是由一个字节长度的、代表着某种特定操作含义的数字(称为操作码,Opcode)以及跟随其后的零个或多个代表此操作所需参数(称为操作数,Operand)而构成...
*本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布 前言 第一次看到插桩,是在Android开发高手课中。看完去查了一下:“咦!还有这东西,有点意思”。 本...
Android 提供了AnimationDrawable用于实现帧动画。在动画开始之前,所有帧的图片都被解析并占用内存,一旦动画较复杂帧数较多,在低配置手机上容易发生 OOM...
Dagger2注解基础 @Inject和@Component 用 @Inject 注解标注目标类中依赖类的实例对象 用 @Inject 注解标注依赖类的构造函数 若其他类还依...
在上篇文章Android11 最近任务Recents功能分析[https://www.jianshu.com/p/f763b0812020]过程中,针对SystemUI内部功...
类加载与字节码技术 1.类文件结构 根据 JVM 规范,类文件结构如下 2.字节码指令 指令作用iconst_1int型常量值1进栈bipush将一个byte型常量值推送至栈...
1 插值器(Interpolator)简介 插值器(Interpolator)是设置动画运行过程中的变化规律,类似匀速变化,加速变化,回弹等。补间动画Animation设置插...
前言 MockView是一种UI原型样式的View,使用场景不是很多,了解下就行了。Space的边距补偿用处很大,使用ConstraintLayout的时候,往往有些场景设置...
Bootstrap是什么? 一套易用、优雅、灵活、可扩展的前端工具集--BootStrap。GitHub上介绍 的bootstrap:☑ 简单灵活可用于架构流行的用户界面和...
js转时间戳 转此时此刻的时间1、var timestamp1 = (new Date()).valueOf();valueOf() 方法返回指定对象的原始值 2、var t...
js遍历与jQuery遍历 js遍历数组和对象 for... var demoArr = ['Javascript', 'Gulp', 'CSS3', 'Grunt', 'j...
虚拟内存1.1. 为什么要使用虚拟内存技术1.2. 理论前提1.3. 虚拟内存实现1.4. 页机制1.5. MMU1.6. 物理内存映射 进程的内存分布2.1. 内核态2.2...
1 简介 之前已经讲过TextView的基础知识,现在在这进一步进行讲解,这篇文字主要讲解如何给TextView设置段落级别的Span。如果一个Span想要影响段落层次的文本...
7.插值误差扩展❌ 【前人方法】直方图平移 差值扩展 图像插值图像插值:原始图像下采样,再用插值的方法生成与原始图像相同的载体图像[36\37\38] 插值算法:最邻近插值法...
[傅里叶变换算法及盲水印实现]盲水印,顾名思义就是看不见的水印。今天我们来说下频域加盲水印。相信大家做过图像处理的对频域、时域、空间域概念都有了一定的了解。 空间域,我们日常...