Android-Jetpack架构组件(二)带你了解Lifecycle,给2021的移动开发一些建议

@Override
protected void onResume() {
super.onResume();
myPresenter.onResume();
}

@Override
protected void onPause() {
super.onPause();
myPresenter.onPause();
}
}

class MyPresenter{

《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》

【docs.qq.com/doc/DSkNLaERkbnFoS0ZF】 完整资料开源分享

void onResume() {

}
void onPause() {

}
}

这两个例子的写法已经很普遍了,实现起来也不难,但实际开发中,可能会有多个组件在Activity的生命周期中进行回调,这样Activity的生命周期的方法中可能就需要放大量的代码,这就使得它们难以维护。
还有一个问题是,如果我们在组件中做了耗时操作(比如在onStart方法),这种写法就无法保证组件在Activity或者Fragment停止之前完成启动。
因此我们需要一个能管理Activity和Fragment的生命周期的库,这个库就是Lifecycle。

2.如何使用Lifecycle

分别来介绍下依赖Lifecycle库和Lifecycle基本用法。

2.1 依赖Lifecycle库

官网给出的依赖代码如下所示:

dependencies {
def lifecycle_version = “2.0.0”

// ViewModel and LiveData
implementation “androidx.lifecycle:lifecycle-extensions: l i f e c y c l e v e r s i o n " / / a l t e r n a t i v e l y − j u s t V i e w M o d e l i m p l e m e n t a t i o n " a n d r o i d x . l i f e c y c l e : l i f e c y c l e − v i e w m o d e l : lifecycle_version" // alternatively - just ViewModel implementation "androidx.lifecycle:lifecycle-viewmodel: lifecycleversion"//alternativelyjustViewModelimplementation"androidx.lifecycle:lifecycleviewmodel:lifecycle_version” // For Kotlin use lifecycle-viewmodel-ktx
// alternatively - just LiveData
implementation “androidx.lifecycle:lifecycle-livedata: l i f e c y c l e v e r s i o n " / / a l t e r n a t i v e l y − L i f e c y c l e s o n l y ( n o V i e w M o d e l o r L i v e D a t a ) . S o m e U I / / A n d r o i d X l i b r a r i e s u s e t h i s l i g h t w e i g h t i m p o r t f o r L i f e c y c l e i m p l e m e n t a t i o n " a n d r

你可能感兴趣的:(程序员,面试,移动开发,android)