Android - 停止IntentService - 更好的BroadcastReceiver还是静态变量?

时间:2015-08-31 13:25:02

标签: android broadcastreceiver android-broadcast

我的Android应用程序我有一个IntentService,它在后台执行一些冗长的操作。 现在我想要做的是从BroadcastReceiver停止服务(通过停止我的意思是在服务中将标志设置为true,以便它在下一次迭代中结束)。 为了将此标志设置为true,哪个选项会更好:

1)将该标志声明为静态并直接从BroadcastReceiver

修改它

2)在IntentService中声明BroadcastReceiver并发送标志值设置为true的广播

3)任何其他方式

谢谢

1 个答案:

答案 0 :(得分:0)

  1. 我在这里避免使用静态值。这不是一个非常好的风格,尽管它显然有效。
  2. 这样做,但这可能会更容易:
  3. 使用startService向服务发送意图。在那个意图中设置一个额外的代表你的旗帜。 在您的服务的onStartCommand中检查是否使用正确的值设置了该额外值,如果是,请更新变量。