[Android]如何知道应用程序何时在Android中成为前台?

问题描述 投票:0回答:1

[Android]我有一项服务(服务A)和一个应用程序(应用B)。每次应用B进入前台(对用户可见)时,我想在服务A中执行一些操作。当应用B进入前台时,是否有任何侦听器/回调将通知服务A?我知道轮询方法可以在经过一定时间间隔后反复检查堆栈顶部存在的应用程序,但是我想要基于侦听器/回调的解决方案,有人可以建议吗?

谢谢

android-service
1个回答
0
投票

也许您正在寻找的是onStart()onCreate()onStop()onResume()

使用这些,您可以知道何时正在使用该应用程序/页面,或者说,它们进入前台。

例如首次打开应用程序/页面

    @Override
    protected void onCreate() {
       //Inform service, user is here first time.
    }

返回到应用程序/页面

    @Override
    protected void onResume() {
       //Inform service, user left to other page but came back to use.
    }

离开应用程序/页面

    @Override
    protected void onResume() {
       //Inform service that the user left, or no longer foreground.
    }

在此处阅读更多:https://developer.android.com/guide/components/activities/activity-lifecycle

希望有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.