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