1

我继承了一个项目,但我不明白如何获得响应或从以下代码设置回调:

startService(new Intent(this, VenueUpdateService.class));

目前,即使 VenueUpdateService 失败,应用程序也会继续。我想更改它,以便应用程序等待来自 VenueUpdateService 的成功/失败。

我在 VenueUpdateService 类中收到关于成功/失败的响应。但是如何将其传递回启动服务的活动?

谢谢,詹姆斯。

4

2 回答 2

2

你要求做的事情对我来说似乎有点奇怪。如果您调用 startService,服务将始终成功启动。并不是说 startService 是一些需要包装在 try/call 块中的危险行为。

但我想你的 Activity 可以注册一个 BroadcastReceiver,它接收从 onStartCommand 中的服务发送的广播。

或者,您可能希望绑定到服务,在这种情况下,您会知道何时绑定。看这里

于 2012-11-06T02:50:03.973 回答
-1

我所做的是将 IntentService 更改为 AsyncTask。

我基本上想阻止用户与应用程序交互,而 VenueUpdateService 这样做是因为它必须至少成功一次,然后用户才能继续使用应用程序。

所以现在我有:

VenueUpdateTask task = new VenueUpdateTask();
task.execute(response);

在该课程中,我显示了一个进度对话框,更新场地。

于 2012-11-22T01:54:21.887 回答