我点击一个按钮即可启动服务:
Intent intent = new Intent(getActivity(), UploadService.class);
getActivity().startService(intent);
我的应用可以启动多项服务。 我知道第一次调用onCreate(),然后如果服务正在运行,则调用onStartCommand()。
onStartCommand返回START_STICKY
。
但我面临一种奇怪的行为: 在第一次单击时,将调用服务,onCreate()然后onStartCommand()...等。 在第二次单击时,当服务仍在运行时,onStartCommand()... etc。
但是当第一个完成时,调用onDestroy(),而第二个仍在进行中......?
如何避免?
由于
答案 0 :(得分:1)
如果启动已经运行的服务,则不会调用onDestroy()
服务,并且已经运行的服务实例将被带到前面,但如果您的服务已明确完成/停止,那么只有{ {1}}将被调用。