Android原生编解码接口MediaCodec详解
MediaCodec 是 Android 中的编解码器组件,用来访问底层提供的编解码器,通常与 Me...
fork join原理_典型相关分析
大家好,又见面了,我是你们的朋友全栈君。
forkjoin的构造器如下,
priv...
Android渲染底层剖析
Overview
早年的Android系统UI流畅性差的问题一直饱受诟病,Google为了解决这个问...
Android Kotlin之Flow数据流
Flow介绍
Flow是google官方提供的一套基于kotlin协程的响应式编程模型,它与Rx...
kotlin的扩展函数“let、run、also、apply”的作用和区别
记录一下四个扩展函数的区别,使用经常记不住:Kotlin的扩展函数let、run、also、...
Android使用AspectJ
一、基本介绍
1. AOP
在了解AspectJ前,我们首先了解另外一个名词:AOP
1.1 概念...
AQS原理分析
Lock
Lock 在 J.U.C 中是最核心的组件,前面学习 synchronized 的时候说过,锁...
java lambda 原理分析
Java lambda 一眼看上去有点像匿名内部类的简化形式,但是二者确有着本质的差别...
算法 – 二叉树
二叉树是一种数据结构,并且拥有种类复杂的分支,本文作为入门篇,只介绍一些...
RecyclerView的使用总结以及常见问题解决方案
本文是RecyclerView源码分析系列最后一篇文章, 主要讲一下我个人对于RecycleView...
Kotlin 中List集合,Set集合,Map集合,数组的详解
1、创建不可变List集合
fun main() {
val list = listOf("Jason", "Jack...
Android理解ANR
1、 前言
在上一篇文章《Android性能优化(六)之卡顿那些事》中,我们提到了卡...
macos上android ffmpeg编译与使用
本篇介绍
本篇介绍下如何在macos上编译android的ffmpeg,并在android工程中使...
写给初学者的Jetpack Compose教程,基础控件和布局
大家好,写给初学者的Jetpack Compose教程又更新了。
Compose的知识体系很庞大,因...
JVM原理:JVM垃圾回收算法(通俗易懂)前言正文总结
+关注继续查看
目录
前言
正文
垃圾标记算法
引用类型
强引用
软引用
弱引用
...
Java程序运行原理分析
class文件内容
class文件包含Java程序执行的字节码
数据严格按照格式紧凑...
Android设计模式源码解析之迭代器(Iterator)模式
1. 模式介绍
模式的定义
迭代器(Iterator)模式,又叫做游标(Cursor)模...
Compose基础-创建你的第一个Compose应用
第一章 创建你的第一个Compose应用
Jetpack Compose是谷歌针对Android的声明式UI框...