标签:target next 页面 etc 功能 sed 变化 roi one
Glide
SingleRequest
Engine
查找逻辑
状态监听处理-综合利用
方式一:View级别的,利用View的attached和detached窗口回调
view.addOnAttachStateChangeListener(attachStateListener)利用View的attached和detached窗口状态变化监听控制请求的paused和resumed
方式二:页面生命周期级别的,利用添加空的Fragment生命周期回调或者Application级别的ComponentCallbacks2回调
Glide.with(activity)->getRetriever(activity).get(activity)->fragmentGet->getRequestManagerFragment->fm.beginTransaction().add(current,FRAGMENT_TAG).commitAllowingStateLoss()添加一个RequestManagerFragment,利用Fragment的生命周期比如onStart、onStop、onDestroy变化监听控制请求的paused、resumed和clear。
Glide.initializeGlide->applicationContext.registerComponentCallbacks(glide);Glide类实现ComponentCallbacks2接口,不能控制请求paused、resumed状态,而是做内存清理工作。
方式三:监听网络状态变化
GlideBuilder.build->DefaultConnectivityMonitorFactory->DefaultConnectivityMonitor监听网络变化监听控制请求的paused、resumed。
android开发Glide4.12.0源码分析理解简单记录
标签:target next 页面 etc 功能 sed 变化 roi one
原文地址:https://www.cnblogs.com/yongfengnice/p/14429221.html