2014-06-17 60 views
1

超時似乎並不在異步類工作超時中的AsyncTask類不工作

int timeoutConnection = 3000; 
url=urls[0].getUrl(); 
HttpClient httpclient = new DefaultHttpClient(); 
HttpPost httppost = new HttpPost(urls[0].getUrl()); 
HttpConnectionParams.setConnectionTimeout(httppost.getParams(), timeoutConnection); 
int timeoutSocket = 3000; 
HttpConnectionParams.setSoTimeout(httppost.getParams(), timeoutSocket); 
httppost.setEntity(new UrlEncodedFormEntity(urls[0].getParameters())); 
// Execute HTTP Post Request 
HttpResponse responsePOST = httpclient.execute(httppost); 
resEntity = responsePOST.getEntity(); 
response=EntityUtils.toString(resEntity); 

請幫助我,我怎麼可以設置超時時間在AsyncTask類?

回答

0

嘗試this

// Set connection timeout 
int timeoutConnection = 3000; 
HttpConnectionParams.setConnectionTimeout(httppost.getParams(), timeoutConnection); 
// set socket timeout 
int timeoutSocket = 3000; 
HttpConnectionParams.setSoTimeout(httppost.getParams(), timeoutSocket); 

// Create the client 
HttpClient httpclient = new DefaultHttpClient(); 
url=urls[0].getUrl(); 

// Create the post 
HttpPost httppost = new HttpPost(urls[0].getUrl()); 
httppost.setEntity(new UrlEncodedFormEntity(urls[0].getParameters())); 
// Execute HTTP Post Request and get response 
HttpResponse responsePOST = httpclient.execute(httppost); 
resEntity = responsePOST.getEntity(); 
response=EntityUtils.toString(resEntity); 
+0

感謝重播但它也沒有工作 – user2624301

+0

你檢查鏈接?這有點不同。另外,嘗試將值從3000設置爲15000,並檢查它是否工作。那麼可能會減少的時間。 –