美文网首页Android
Android Jetpack - Lifecycles 介绍

Android Jetpack - Lifecycles 介绍

作者: Linhaojian | 来源:发表于2018-12-26 18:28 被阅读270次
Jetpack.jpg

1.前言

  • 2018年谷歌I/O 发布了一系列辅助android开发者的实用工具,合称 Jetpack ,以帮助开发者构建出色的 Android 应用。
  • Jetpack 包含4个部分的组件:Architecture、Foundation、Behavior 以及 UI
  • 今天为大家介绍的是 ArchitectureLifecycles
  • 文章中实例 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同理):
  1. AppCompatActivity
class MyActivity extends AppCompatActivity {
    public void onCreate(...) {
        //添加观察者
        getLifecycle().addObserver(new MyObserver());
     }
}
  1. 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

欢迎关注linhaojian_CSDN博客或者linhaojian_简书

不定期分享关于安卓开发的干货。


写技术文章初心

  • 技术知识积累
  • 技术知识巩固
  • 技术知识分享
  • 技术知识交流

相关文章

网友评论

    本文标题:Android Jetpack - Lifecycles 介绍

    本文链接:https://www.haomeiwen.com/subject/tcvzqqtx.html