如何查找应用程序是在后台运行还是在前台运行或者杀死android

时间:2014-04-04 14:23:28

标签: android android-activity google-cloud-messaging

我需要您的建议,在我的应用程序中,我使用 GCM广播接收器,我的应用也有 PIN页。在这里,我需要检查一个条件,如用户登录或不推送通知,取决于我需要设置不同的活动。那么任何人都可以建议我如何解决这个问题?对不起我的英语不好。

1 个答案:

答案 0 :(得分:1)

您可以按照以下方式执行操作:

如果您的应用未启动/运行且您从通知开始,则会调用onCreate。

@Override
protected void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
}

当您的应用程序正在运行(后台或前台),并且您从通知中启动一个新意图时会调用此方法:(如果您使用的是singleTop)

@Override
protected void onNewIntent (Intent intent){

}

要检测您的应用程序是在后台运行还是前台运行,您只需在onPause / onResume中设置一个布尔值:

@Override
protected void onResume() {
  super.onResume();
  runningOnBackground = false;
}

@Override
protected void onPause() {
  super.onPause();
  runningOnBackground = true;
}

希望它有所帮助!