我想检测是否有任何其他的东西会吸引我的活动,我尝试使用this Answer但没有成功,任何身体可以帮助我获取通知,当活动被脸书聊天头等任何其他视图遮挡时。
onPause()
和onUserLeaveHint()
可用于根据您的要求进行检查。让我们理解这些概念。
当一个活动进入后台时,onPause()
被称为活动生命周期的一部分,但尚未被杀死。 onResume()的对应部分。
现在问题来了,这可能发生在用户按下主页或锁定按钮,以处理此scanario。在这个onUserLeaveHint()
帮助我们决定是否因为其他应用程序的用户而调用了onPause()
。
当活动即将作为用户选择的结果进入后台时,onUserLeaveHint()
将被调用为活动生命周期的一部分。例如,当用户按下Home键时,将调用onUserLeaveHint(),但是当传入的电话呼叫导致调用中的Activity自动被带到前台时,onUserLeaveHint()将不会被调用的活动被调用。在调用它的情况下,在活动的onPause()回调之前调用此方法。
有关更多信息,可以在开发人员网站上阅读onPause()和onUserLeaveHint()的文档。
希望这对你有所帮助。