Android app后台回到前台时的监听

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android app后台回到前台时的监听相关的知识,希望对你有一定的参考价值。

参考技术A 在一次项目,有个需求涉及到切后台回到app时,需要调起一个弹窗,以这个需求为例子,跟大家分享下我如何实现的(大牛轻拍 = = )

首先,我们在app初始化时,要注册activity生命周期的回调,我这边项目里在BaseApplication初始化时调用registerActivityLifecycleCallbacks()

它需要一个ActivityLifecycleCallbacks类型的参数

这个接口涉及到所有activity生命周期的回调

回归正题,先初始化ActivityLifecycleCallbacks,

我们现在要做的是后台回前台,所以我们只选择onActivityStarted和onActivityPaused

我是这么做判断的,给个foregroundActivityCount去表示当前app有多少个activity处于启动的状态,给个Boolean值appInBackground判断app是否处于后台,每次打开app,当启动一个activity时,就统计开启activity的次数,并且调用你所需要的监听方法;只要在start 和 stop时判断有所activity都stop了,当当前activity启动次数为0时,说明app处于后台;

初始化已经完成,接下来就是怎么调用了。我们去到后台回来时需要操作的activity或者fragment,在初始化时调取BaseApplication里面刚才设定的方法

在里面写下你后台回来时你需要的操作

还有一个缺陷,假如是在指定fragment做监听怎么办?其实都差不多的,fragment在activity里,绑定 了activity的生命周期,假设我们要在指定的fragment才调取这个方法,我们需要在加一层判断,判断当前fragment是否可见

这样,只要你每次从后台回来,都可以监听到,但如果不在当前fragment的话,就不会调用你设定的方法。

以上,是我刚接触不久的问题,分享给大家,写的不好的大家见谅,有问题可以评论或私信我,本人还是实习生,请轻拍= =

进程测试

1)安装后是否在运行,进程是否存在

2)杀死进程后,再次进入app是否正常

3)app运行中卸载

4)app非运行状态下卸载

1) APP切换到后台,再回到app,检查是否停留在上一次操作界面。

2) APP切换到后台,再回到app,检查功能及应用状态是否正常,IOS4和IOS5的版本的处理机制有的不一样。

3) app切换到后台,再回到前台时,注意程序是否崩溃,功能状态是否正常,尤其是对于从后台切换回前台数据有自动更新的时候。

4) 手机锁屏解屏后进入app注意是否会崩溃,功能状态是否正常,尤其是对于从后台切换回前台数据有自动更新的时候。

5) 当App使用过程中有电话进来中断后再切换到app,功能状态是否正常

6) 当杀掉app进程后,再开启app,app能否正常启动。

7) 出现必须处理的提示框后,切换到后台,再切换回来,检查提示框是否还存在,有时候会出现应用自动跳过提示框的缺陷。

8) 对于有数据交换的页面,每个页面都必需要进行前后台切换、锁屏的测试,这种页面最容易出现崩溃。

以上是关于Android app后台回到前台时的监听的主要内容,如果未能解决你的问题,请参考以下文章

进程测试

ios 监听app从后台恢复到前台

模拟 按home键 应用退到后台几秒后 自动回到前台

java 检查Android App的后台/前台状态

Android作业批改系统(后台管理+前台app)

android 判断app是否处于前台