简析LeakCanary

LeakCanary使用添加依赖(release有no-op版)然后在 Application 初始化。 123456dependencies {     阅读全文
CodePoem's avatar
CodePoem 11月 25, 2020

简析LRU

LRU最近最少使用算法。 基本原理 -要求查找快,插入快,删除快,有顺序之分。哈希表查找快,但是数据无固定顺序;链表有顺序之分,插入删除快,但是查找慢。所以结合一下,形成一种新的数据结构:哈希链表。 按顺序插入 ,所以需要双向链表。 LinkedHashMap,使用 accessOrder=true 基于顺序访问,元素访问后被移动到末尾。 自己动手实现LRU12...     阅读全文
CodePoem's avatar
CodePoem 11月 25, 2020

简析Glide

Glide123Glide.with(context) .load(myUrl) .into(imageView); 生命周期     阅读全文
CodePoem's avatar
CodePoem 11月 25, 2020

简析OkHttp

OkHttp是对 Socket 的封装。URLConnection 在4.4以后底层也使用了 OkHttp。 Android源码中 /external/okhttp/jarjar-rules.txt 中表示com.squareup开关的包会在编译时打包成com.android开头的包。 12rule com.squareup.** com.android.@1rule okio.** com.android.okio.@1     阅读全文
CodePoem's avatar
CodePoem 11月 25, 2020

译-viewlifecycleowner与this对比

哈喽,Android 小伙伴们~ 这篇文章将提到 Fragment 中的两种 lifecycleowners。因为作为一个 Android 开发者,我们能够简单地使用 Fragment 作为 lifecycle owner,但某些情境下这可能会使你烦恼。 让我们先来看一下 Fragment 的生命周期: 从图中我们可以看到 onCreate 和 onDestroy 只调用了一次。这些是 Fragment 的主要的生命周期方法。 onCreateView 和 onDestroyView 根据 Fragment 的状态来被调用,因为它们是 Fragment 中 View 的主要生命周期方法。 因此,如果我们在 onCreate 中绑定 LiveData ,仅仅注册一次似乎是很合适很健康的。 1...     阅读全文
CodePoem's avatar
CodePoem 11月 24, 2020