我有一个运行RoboSpice的简单演示。
它是扩展SpringAndroidContentService
的默认服务,可以在他们的github上找到。
奇怪的是,当我发送请求时,Progress
会更新,但我最终没有接到onRequestSuccess
的电话,这是一个简单的Toast。
我检查了LogCat,没有例外。以下是相关代码:
/* RestContentRequest overrider */
@Override
public String loadDataFromNetwork() throws Exception {
RestTemplate restTemplate = getRestTemplate();
try {
String response= restTemplate.getForObject(
"http://xxx.xxx/mobile.html", String.class);
//does not get called
Log.d(LOGTAG, response);
return response;
} catch (HttpClientErrorException e) {
//Does not get called
Log.e(LOGTAG, e.toString());
return e.getLocalizedMessage();
}
}
private class RequestListener implements RequestListener<String>, RequestProgressListener {
@Override
public void onRequestFailure(SpiceException exception) {
//Does not get called
debug.setText(exception.getLocalizedMessage());
}
@Override
public void onRequestSuccess(String response) {
//Does not get called
Toast.makeText( LoginActivity.this, response, Toast.LENGTH_SHORT ).show();
}
@Override
public void onRequestProgressUpdate(RequestProgress progress) {
//Gets called
debug.setText(convertProgressToString(progress));
}
private String convertProgressToString( RequestProgress progress ) {
String status = "";
switch ( progress.getStatus() ) {
case READING_FROM_CACHE:
status = "? cache -->";
break;
case LOADING_FROM_NETWORK:
status = "^ network ^";
break;
case WRITING_TO_CACHE:
status = "--> cache";
break;
default:
status = "";
break;
}
return status;
}
}
这可能是什么原因?它只需要读取一个带有字符串的页面。 (纯/文本)
答案 0 :(得分:0)
我不知道你试过哪个版本的RoboSpice,但它肯定适用于RoboSpice。你介意试一试吗?最后一个稳定版本是1.3.1。
你在Stack Over Flow上有一个RoboSpice问题,请通知我或标记它。