绑定到服务的活动是否将继续在后台运行?

时间:2015-03-13 09:56:29

标签: android android-activity android-service android-service-binding foreground-service

我有一个Activity,它在位置监听器中接收位置。 此Activity通过startService()启动服务,然后使用bindService()绑定到此服务,以便与服务共享数据。

绑定和取消绑定是为了响应onClick内的按钮单击而完成的。 类似的东西:

onClick(){
  if(!bind){
         startService(serviceIntent)
         bindService(serviceIntent, mConnection, Context.BIND_AUTO_CREATE);
         bind=true;
}else{
      unbindService(mConnection);
      stopService(serviceIntent);
      bind=false;
    }
}

现在我的问题是,在某些时候我的Activity会像按下Home按钮一样进入后台,并且服务继续运行并且绑定仍然完好无损!

那么这个绑定会有助于让Activity在后台运行吗?

该服务是具有关联通知的foregroundService,当用户按下通知时它将打开后台Activity。

1 个答案:

答案 0 :(得分:0)

不,活动可以在任何时候销毁,而在后台取决于您当前在系统中的内存状态(如果您的应用程序优先级在系统中不够高,而Android需要释放内存,它可能会被破坏)。当然,服务会继续运行,如果它被设置为您设置的STICKY +通知,则保持这种状态。但是没有保证活动在后台的任何时候都能保持活力。