【发布时间】:2010-11-18 16:25:35
【问题描述】:
我通过以下方式启动服务:
private ServiceConnection _serviceConnection = new ServiceConnection() {...}
bindService(new Intent(this, MainService.class), _serviceConnection, Context.BIND_AUTO_CREATE);
我想“重启”服务。 (让我们不要争论我为什么要这样做) 我这样做是:
unbindService(_serviceConnection);
// Do some initialization on service
bindService(new Intent(this, MainService.class), _serviceConnection, Context.BIND_AUTO_CREATE);
我注意到服务不会死(onDestroy 不会运行),直到我调用下一个 bindService(); 所以我在服务上做的一些静态初始化被 onDestroy() 实现清除了。
问题:如何确保 unbindService() 将停止服务(运行 onDestory()), 这样我就可以在之后进行初始化并重新运行 bindService()?
【问题讨论】: