当前位置: 首页 > news >正文

想做机械加工和橡胶生意怎么做网站大连在哪个网站做网上核名

想做机械加工和橡胶生意怎么做网站,大连在哪个网站做网上核名,网站网页设计平台,附近的广告设计公司在哪问题:想要知道应用程序当前处在前台、后台、或从后台回到前台,想要知道应用的状态, LifeCycle提供了ProcessLifeCycleOwner的类,方便我们知道整个应用程序的生命周期情况 ProcessLifeCycleOwner 使用方法 1.首先添加依赖 imple…

问题:想要知道应用程序当前处在前台、后台、或从后台回到前台,想要知道应用的状态,

LifeCycle提供了ProcessLifeCycleOwner的类,方便我们知道整个应用程序的生命周期情况

ProcessLifeCycleOwner 使用方法

1.首先添加依赖

    implementation "androidx.lifecycle:lifecycle-extensions:2.2.0"

ProcessLifeCycleOwner 其本质也是观察者模式,由于要观察整个应用,需要在Application中进行代码编写。

  1. 定义一个ApplicationObserver类,实现LifecycleObserver接口,用来监听应用生命周期
public class ApplicationObserver implements LifecycleObserver {private String TAG = "ApplicationObserver";/*** 在应用程序的整个生命周期中只会调用一次*/@OnLifecycleEvent(Lifecycle.Event.ON_CREATE)public void onCreate() {Log.e(TAG, "onCreate()");}/*** 应用在前台出现时被调用*/@OnLifecycleEvent(Lifecycle.Event.ON_START)public void onStart() {Log.e(TAG, "onStart()");}/*** 应用在前台出现时被调用*/@OnLifecycleEvent(Lifecycle.Event.ON_RESUME)public void onResume() {Log.e(TAG, "onResume()");}/*** 当应用程序退出到后台时被调用*/@OnLifecycleEvent(Lifecycle.Event.ON_PAUSE)public void onPause() {Log.e(TAG, "onPause()");}/*** 当应用程序退出到后台时被调用*/@OnLifecycleEvent(Lifecycle.Event.ON_STOP)public void onStop() {Log.e(TAG, "onStop()");}/*** 永远不会被调用,系统不会分发调用ON_DESTROY 事件*/@OnLifecycleEvent(Lifecycle.Event.ON_DESTROY)public void onDestroy() {Log.e(TAG, "onDestroy()");}}
  1. 在Application中使用ApplicationObserver
public class App extends Application {@Overridepublic void onCreate() {super.onCreate();//监听应用的生命周期情况ProcessLifecycleOwner.get().getLifecycle().addObserver(new ApplicationObserver());}
}

日志
在这里插入图片描述

使用起来非常简单,不会给项目增加任何耦合度,需要注意的是:

  • ProcessLifeCycleOwner 是针对整个应用程序的监听,与Activity数量无关。
  • Lifecycle.Event.ON_CREATE只会被调用一次,Lifecycle.Event.ON_DESTROY永远不会被调用。
  • 首次被打开或应用程序从后台到前台,会依次调用Lifecycle.Event.ON_START、Lifecycle.Event.ON_RESUME
  • 从前台到后台会依次调用Lifecycle.Event.ON_PAUSE、Lifecycle.Event.ON_STOP

LifecycleOwner是接口

public interface LifecycleOwner {/*** Returns the Lifecycle of the provider.** @return The lifecycle of the provider.*/@NonNullLifecycle getLifecycle();
}

LifecycleOwner 通过getLifecycle(LifecycleObserver observer)实现观察者模式的。

总结

所有具有生命周期的组件都能够使用LifeCycle。包括Activity、Service、Fragment、Applicaption。LifeCycle组件存在的主要意义就是帮我们解耦,让自定义组件也能够感受到生命周期的变化。不需要再担心内存泄漏等问题。

http://www.yayakq.cn/news/714503/

相关文章:

  • 做网批有专门的网站吗?电商设计师岗位职责
  • 网站开发环境及工具广州网站建设联雅
  • 企业网站如何建立凡科建站小程序制作
  • 深圳网站建设有没有市场常州网站建设公司巧誉友网络
  • 重庆网站建设专家建站快车品牌
  • 乐辰科技网站建设求职设计师的个人简历模板
  • 成都制作网站提供商杭州网站建设教育机构
  • 上海做网站公司做网站的公司百度平台营销收费标准
  • 我的世界做封面网站中国移动app免费下载安装
  • 外贸网站如何做推广是什么网架公司排名
  • 温州网站建设方案表一个虚拟空间做两个网站
  • 怎么制作手机网站买个域名就可以建立网站吗
  • 重庆网站建设cqhtwl梵克雅宝官网报价
  • 烟台网站制作开发添加到wordpress视频库中
  • 电脑上做网站wordpress淘客分销
  • 建设快三网站wordpress匿名投稿
  • 万网有域名怎么建网站域名防红短链接
  • 石家庄网站建设哪里好wordpress分页伪静态
  • 北京最新消息情况今天佛山网站优化服务
  • vue.js合作做网站么如何做网站美工
  • 个人做电子商务网站备案iis访问网站打开要很久
  • 如何用手机建设一个网站网络营销方式对比
  • 东莞官方网站做收费网站
  • 成都制作网站公司家庭带宽100m做网站
  • 免费的代码分享网站安庆跨境电商建站哪家好
  • 北京南站到北京站网络推广方案百度百科
  • 请简述网站建设流程图北京网站建设费用
  • 网站建设服务合约辽阳企业网站建设价格
  • 青岛seo精灵长沙关键词优化平台
  • 怎么做网站内部搜索功能现在企业做门户网站