我有一个Xamarin的Android应用程序,我正在编写,我有一种情况,我需要发送一些信息从我的应用程序到一个web服务保存。我对Android框架还比较陌生,但似乎IntentService是一个合理的选择,所以我可以从我的主线程中卸载这些工作。
但是,对于IntentService如何管理发送给它的请求的工作队列,我有点模糊。具体来说,当处理过程中出现故障时,服务的工作队列请求会发生什么情况?例如,在我的例子中,假设没有wifi/3G连接,web服务器不可用,等等。我是否需要捕获这些问题并将它们重新提交给服务,还是有方法在服务内部处理它们?
在阅读了Android (http://developer.android.com/guide/components/services.html)之后,这些请求似乎被按接收和丢弃的方式进行了服务;我没有看到任何关于如果发生了什么事情将请求保留在队列中,开发人员手动添加到队列中的情况,等等。
我是不是遗漏了什么?或者我应该滚动我自己的服务类来处理这些问题?任何想法都将不胜感激。谢谢。
发布于 2013-08-09 17:06:46
意图服务将只执行您在onHandleIntent(Intent intent)方法中让它做的事情。没有错误处理,因为并不是所有的IntentService实现都会执行网络请求或任何特定的任务。唯一的保证是onHandleIntent()中的代码将位于工作线程上。
https://stackoverflow.com/questions/18151896
复制相似问题