文章目录
JVM
JVM Hotspot 虚拟机与 Dalvik&ART 虚拟机堆栈的区别
并发
Java synchronized 与 CAS(Compare And Swap)
Java AQS(AbstractQueuedSynchronizer)
IO
Java
HTTP
登录和第三方授权(Cookie和Authorization)
Activity和Fragment
Service
原理
系统源码原理
Jetpack
自定义 View 原理
requestLayout、invalidate、postInvalidate的区别
Android自定义View系列:PorterDuff.Mode
Android自定义View系列:事件拦截机制(触摸反馈机制)
Android 拖拽滑动(OnDragListener和ViewDragHelper)
第三方原理
Android annotationProcessor 和 APT 运行原理
其他原理
ImageLoader、Fresco、Glide、Picasso的优劣
动画
性能优化
Android性能优化系列:VSync、Choreographer和Render Thread
JNI
Kotlin
Compose
Compose:Modifier、CombinedModifier 和 ComposedModifier
Compose:附带效应 SideEffect 和 Compose 中的协程
协程
1.3-协程基础与关键知识:手动切线程-withContext
1.5-协程基础与关键知识:连接线程的世界-回调型 API 协作
1.6-协程基础与关键知识:回到线程世界-runBlocking
3.1-CoroutineScope/CoroutineContext:CoroutineScope 和 CoroutineContext 的概念
3.2-CoroutineScope/CoroutineContext:GlobalScope
3.3-CoroutineScope/CoroutineContext:从挂起函数里获取 CoroutineContext
3.4-CoroutineScope/CoroutineContext:coroutineScope() 和 supervisorScope()
3.5-CoroutineScope/CoroutineContext:CoroutineName
3.6-CoroutineScope/CoroutineContext:CoroutineContext 的加减、获取和自定义 CoroutineContext