我需要帮助解决这种情况:
- 我有活动,什么启动 IntentService。
- 服务在循环中做一些工作并休眠一段时间。
- 服务的主要周期是无止境的,所以我需要再次停止它的活动。
我必须能够结束活动,重新启动它并从新的活动“实例”中停止 IntentService。
public class MyService extends IntentService { public MyService() { super("MyService"); } public MyService(String name) { super(name); } @Override protected void onHandleIntent(Intent intent) { Log.d("SERVICE", "start"); while(true) { SystemClock.sleep(1000); Log.d("SERVICE", "tick"); } } @Override public void onDestroy() { Log.d("SERVICE", "end"); super.onDestroy(); }
...
Intent intent = new Intent(getApplicationContext(), MyService.class);
startService(intent);
我试过打电话stopService()
,但它不起作用。有什么解决方案如何做到这一点?提前致谢。