【发布时间】:2011-10-10 21:42:13
【问题描述】:
我是一名刚接触 android 的学生,我有一个使用后台服务的应用程序。 我想通过单击一个按钮来启动/停止服务,我这样做是这样的:
case R.id.enablepop:
if (!(pop.runningFlag))
startService(new Intent(mainScreen,PopUpService.class));
return true;
case R.id.disablepop:
if (pop.runningFlag)
stopService(new Intent(mainScreen,PopUpService.class));
return true;
在服务的 onStart() 函数中,我将 runningFlag 设置为“true”,然后创建一个在 runningFlag 为 true 时工作的线程。 我在 onDestroy() 上将 runningFlag 设置为 false。
问题是服务不会停止。有人可以帮我吗?
【问题讨论】:
-
您如何确定“服务不会停止”?
-
我看到了,我真的不明白我需要做什么,我没有覆盖 onBind() 函数,也许这就是问题所在?我需要将 onServiceDisconnect() 放在哪里,因为我在 Activity 中停止了服务..
-
我知道该服务仍在运行,因为我在其中使用了 Log.d()。