1

我有一个 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。

4

1 回答 1

0

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

于 2015-03-28T19:22:51.690 回答