Android 前后台切换通知实现

1.背景:

我们在做应用开发的时候,经常需要对应用监听判断,当前应用是否处于前台还是后台,包括如果切到后台收到通知做一些功能。以前我们常见的做法通过方法来判断,其实还有其他的简单方法,接下来我们将使用一些常规比较稳当的方法。

onTrimMemory和

registerActivityLifecycleCallbacks

2.详解

2.1public void onTrimMemory(int level)(前台切到后台)
这个方法属于application的方法,我们只要对方法进行覆盖即可,父类已提供,在level标识中,
TRIM_MEMORY_UI_HIDDEN:标识当前UI不可见,也就是我们把app切到后台了。这个时候我们通过eventgBus或者其他的方法通知其他Activity做相应的操作,这个方法提供的是判断切到后台

 

2.2registerActivityLifecycleCallbacks(后台切回前台)

public void registerActivityLifecycleCallbacks(ActivityLifecycleCallbacks callback),只注册该方法,接口回调如下
void onActivityCreated(Activity activity, Bundle savedInstanceState);
void onActivityStarted(Activity activity);
void onActivityResumed(Activity activity);
void onActivityPaused(Activity activity);
void onActivityStopped(Activity activity);
void onActivitySaveInstanceState(Activity activity, Bundle outState);
void onActivityDestroyed(Activity activity);

我们只需要在onActivityStarted回调中进行处理从后台切回前台的通知即可

 

最后,在基类中,接收该通知,注意:如果App混淆了,需要keep一下基本的eventBus接收类。

小黑板:

*App混淆不清的可以访问我这篇文档:android一站式解决混淆

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值