-
LiveData
Lifecycle 的使用与实现原理Lifecycle 的使用在 Activity 或 Fragment 中,可以通过 getLifecycle() 方法获取对应的 Lifecycle 对象,然后添加 LifecycleObserver 接口的实现类... -
ThreadLocal
为什么要使用ThreadLocal在并发编程中,多个线程同时访问和修改共享变量是一个常见的场景。这种情况下,可能会出现线程安全问题,即多个线程对共享变量的操作可能会相互干扰,导致数据不一致。 为了解决线程安全问题,一种常见的做法是使用锁机制,如syn... -
启动流程管理
🔒 The post has been encrypted and can only be viewed after entering the password. -
启动流程
Activity启动流程 Activity.startActivity—> startActivityForUser –>Instrumentation.excuStartActivity–>ATM —startActivity ... -
热修复
什么是热修复在应用上线后出现bug需要及时修复时,不用再发新的安装包,只需要发布补丁包,在客户无感知下修复掉bug 怎么进行热修复服务端:补丁包管理用户端:执行热修复开发端:生成补丁包 开发端:■补丁包是什么?■如何生成补丁包?■开启混淆后呢?■对比... -
LeakCanary
如何自己设计一个内存泄漏监控系统监控生命周期在 Android 应用中,准确判断对象是否处于生命周期终结状态是监控内存泄漏的关键起始点。对于 Activity 而言,其 onDestroy 方法的执行标志着它在理论上进入了可被回收的阶段。而在这一过程... -
Test
🔒 The post has been encrypted and can only be viewed after entering the password. -
EventBus
EventBus 在发送了消息后,就会直接回调该消息类型的所有监听方法,回调操作是通过反射 method.invoke 来实现的,那么在回调之前也必须先拿到应用内所有的监听方法才行。EventBus 获取监听方法的方式有两种: 不配置注解处理器。在... -
Retrofit
retrofit 封装的点 Build 模式 创建网络请求基本配置 用注解来排列组合成网络请求,以不变应万变 统一提供Gson解析,提供了可复用,易拓展的数据解析方案 自定义Executor(handler)完成线程的切换。 什么是Retrofit... -
ARouter
路由系统 ——— 给 无依赖的双方 提供 通信和路由的能力 ARouter ARouter原理使用ARouter在进行Activity跳转非常简单:初始化ARouter、添加注解@Route、发起路由。 123// 在module app中//1.初...
Keep writing and Keep loving.|