android检测用户从/切换到HOME

时间:2014-04-23 07:22:45

标签: android android-appwidget homescreen

我在HOME有一个appwidget,并定期更新。如果HOME不可见,我想停止更新。我使用服务来注册屏幕开/关接收器,以便在屏幕打开/关闭时开始/停止更新appwidget。但我不知道如何检测屏幕是否打开但是用户正在关注其他东西(即HOME不在前景)。我如何检测用户是否在我的服务或接收器中切换到HOME(这是一个appwidget,当它发生时我手边没有活动)?

1 个答案:

答案 0 :(得分:1)

据我所知,没有直接的API 检测HOME是在前景还是后台。

但是下面的代码片段会告诉您用户当前是否处于HOME状态。

if (mActivityManager.getRunningTasks().get(0).topActivity.getPackageName().equals("com.android.launcher") {

//home 

}

免责声明: 以上代码仅适用于默认启动器(com.android.launcher)。因此,如果用户使用某个第三方启动器,如果您不知道该启动器的包名称,则无法检测到。