我使用此代碼對我的Web服務器執行HttpGet請求。它可以在模擬器上正常工作,但不適用於我的HTC Sense。執行只是在沒有任何http請求的情況下結束。任何想法 ?HttpClient不能在真實設備上工作
File f = new File(user.getPhotopath());
List<NameValuePair> reqparams = new LinkedList<NameValuePair>();
reqparams.add(new BasicNameValuePair("email", user.getEmail()));
reqparams.add(new BasicNameValuePair("pwd", user.getPassword()));
reqparams.add(new BasicNameValuePair("name", user.getScreenName()));
reqparams.add(new BasicNameValuePair("photo", f.getName()));
reqparams.add(new BasicNameValuePair("preference", user.getPrefs()));
reqparams.add(new BasicNameValuePair("bluetoothid", bid));
String urlstring = "http://www.mysite.com/me?"+ URLEncodedUtils.format(reqparams, "utf-8");
try {
URL url = new URL(urlstring);
URI myURI = null;
try {
myURI = url.toURI();
} catch (URISyntaxException e) {
e.printStackTrace();
}
HttpClient httpClient = new DefaultHttpClient();
HttpGet getMethod = new HttpGet(myURI);
HttpResponse webServerResponse = null;
HttpEntity httpEntity = null;
try {
webServerResponse = httpClient.execute(getMethod);
httpEntity = webServerResponse.getEntity();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
if (httpEntity != null) {
InputStream instream = httpEntity.getContent();
BufferedReader reader = new BufferedReader(new InputStreamReader(instream));
StringBuilder sb = new StringBuilder();
String line = null;
try {
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
resultStr = sb.toString();
instream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
向我們展示堆棧跟蹤 – Falmarri 2011-02-16 00:43:10
事實上,stacktrace會有幫助,以及您的模擬器是否在代理之後運行。 – ndrix 2011-02-18 20:27:38