1.前言
- 2018年谷歌I/O 发布了一系列辅助android开发者的实用工具,合称 Jetpack ,以帮助开发者构建出色的 Android 应用。
-
Jetpack 包含4个部分的组件:Architecture、Foundation、Behavior 以及 UI 。
- 今天为大家介绍的是 Architecture 中
Lifecycles
。
- 文章中实例 linhaojian的Github
2.简介
- 介绍 :
Lifecycles 包含有关Activity与Fragment生命周期状态的信息,并允许其他对象观察此状态
- 作用:
1.观察组件(Activtiy、Fragment)的生命周期状态。
3.使用
public class MyObserver implements LifecycleObserver {
@OnLifecycleEvent(Lifecycle.Event.ON_RESUME)
public void connectListener() {
...
}
@OnLifecycleEvent(Lifecycle.Event.ON_PAUSE)
public void disconnectListener() {
...
}
}
- 关联Activity有 2 种方式(Fragment同理):
- AppCompatActivity
class MyActivity extends AppCompatActivity {
public void onCreate(...) {
//添加观察者
getLifecycle().addObserver(new MyObserver());
}
}
- Activity
public class MyActivity extends Activity implements LifecycleOwner {
private LifecycleRegistry mLifecycleRegistry;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mLifecycleRegistry = new LifecycleRegistry(this);
mLifecycleRegistry.markState(Lifecycle.State.CREATED);
//添加观察者
getLifecycle().addObserver(new MyObserver());
}
@Override
public void onStart() {
super.onStart();
mLifecycleRegistry.markState(Lifecycle.State.STARTED);
}
@NonNull
@Override
public Lifecycle getLifecycle() {
return mLifecycleRegistry;
}
}
4.总结
- 到此,
Lifecycles
就介绍完成了。后续我会进行分享Jetpack更多其他内容。
- 如果喜欢我的分享,可以点击 关注 或者 赞,你们支持是我分享的最大动力 。
- linhaojian的Github
不定期分享关于安卓开发的干货。
写技术文章初心
- 技术知识积累
- 技术知识巩固
- 技术知识分享
- 技术知识交流