下面我編寫了一個關於Web服務的教程,但沒有發生任何事情,雖然沒有給出錯誤。任何人都可以幫助我嗎?因爲我無法繼續。我需要連接到Web服務,這是行不通的。獲取響應rest web服務使用Java for Android
使用調試器,我發現它停止在這一特定行的第一個方法:HttpResponse response = client.execute(request);
private String result = "";
public void getResponse()
{
HttpClient client = new DefaultHttpClient();
String query ="working url";
try
{
URL url = new URL(query);
URI uri = new URI(url.getProtocol(), url.getHost(),url.getPath(), url.getQuery(),null);
HttpGet request = new HttpGet(uri);
HttpResponse response = client.execute(request);
result=Userrequest(response);
}
catch(Exception ex)
{
}
}
public String Userrequest(HttpResponse response)
{
try
{
InputStream in = response.getEntity().getContent();
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
StringBuilder str = new StringBuilder();
String line = null;
while((line = reader.readLine()) != null)
{
str.append(line + "\n");
}
in.close();
result = str.toString();
updateData(result);
}
catch(Exception ex)
{
//responsetxt.setText(ex.getMessage());
}
return result;
}
public void updateData(String result)
{
try
{
JSONObject json = new JSONObject(result);
JSONArray ja;
json = json.getJSONObject("responseData");
ja = json.getJSONArray("results");
int resultCount = ja.length();
for (int i =0; i<resultCount; i++)
{
JSONObject resultObject = ja.getJSONObject(i);
result = resultObject.toString();
}
}
catch(Exception ex)
{
//responsetxt.setText(ex.getMessage());
}
}
你有沒有在AndroidManifest.xml中添加網絡許可?你可以發佈你的LogCat嗎? –
謝謝你的回覆。不,我沒有在我的Manifest中添加任何東西。任何幫助將不勝感激。 – Adnama
'String result = EntityUtils.toString(response);'簡化了你寫的內容(從響應緩衝區讀取數據並創建一個字符串)。 –