【发布时间】:2014-05-21 16:37:49
【问题描述】:
所以我一直在尝试从 Android 服务类中的 URL 获取响应。
我使用了一个异步任务来实现效果,我无法将异步任务传递给 .execute(),知道为什么吗?
请记住,即使应用程序没有运行,此服务也会每分钟运行一次。
我是否可以使用服务从任何 URL 获取响应,或者我最好使用异步任务本身,如果我可以让它执行?
所以我调用了异步任务
switch (mode) {
case ALL:
new XMLRequestTask().execute(ABSOLUTE_WEBSERVICE_PATH + "all");
Log.v(LOG_TAG, "XML requests, waiting for answer...");
break;
case DELTA:
new XMLRequestTask().execute(ABSOLUTE_WEBSERVICE_PATH + "delta");
Log.v(LOG_TAG, "XML requests, waiting for answer...");
break;
}
还有
任务本身。
@Override
protected InputStream doInBackground(String... params) {
Log.v(LOG_TAG, "Running background task");
InputStream content = xmlDownloader.getXMlFromURL(mURL);
//Log.v(LOG_TAG, "Running background task");
return content;
}
@Override
protected void onPostExecute(InputStream result) {
Log.v(LOG_TAG, "XML Downloader got: " + result);
//super.onPostExecute(result);
}
提前感谢您的帮助。
最好的问候
【问题讨论】:
标签: android android-asynctask android-service androidhttpclient