Tôi đang cố gắng triển khai lớp httpClient là một AsyncTask (nếu không tôi nhận được ngoại lệ do có kết nối trong chuỗi chính của mình). Tôi đã thử một cái gì đó như thế này:Android Async Http Nhận yêu cầu
private class execHttpAsync extends AsyncTask <String, String, HttpResponse>
{
public String resultString;
@Override
protected HttpResponse doInBackground(String... params)
{
String url = params[0];
HttpClient httpClient = new DefaultHttpClient();
HttpGet request = new HttpGet(url);
request.setHeader("Content-Type", "text/xml");
HttpResponse response;
try {
response = httpClient.execute(request);
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return response;
}
@Override
protected void onPostExecute(HttpResponse result)
{
StringBuffer returned = new StringBuffer();
InputStream content = result.getEntity().getContent();
BufferedReader rd = new BufferedReader(new InputStreamReader(content, "UTF-8"));
String line;
while ((line = rd.readLine()) != null)
{
String endOfLine = "";
returned.append(line + endOfLine);
}
content.close();
String retVal = returned.toString();
try
{
String header = retVal.substring(0, 1);
if (!header.equals("<"))
{
retVal = retVal.replace(header, "");
}
}
catch (Exception e)
{
// TODO: handle exception
}
resultString = returned.toString();
}
}
Nhưng tôi cần nhận được phản hồi cuối cùng. Tôi đã cố gắng để nhanh chóng lớp này và sau đó nhận được phản ứng như là một thành viên nhưng điều đó đã không làm việc ra ngoài. Bất kỳ đề xuất nào?
Bạn đang gặp phải loại lỗi nào? Bạn không nhận được kết quả? Đăng một stacktrace nếu có. –