2012-02-10 15 views
15

Android 2.1/2.2'de Android SDK'da bulunan DefaultHttpClient kullanıyorum.Android'deki DefaultHttpClient'teki bağlantı ve yuva zaman aşımları için varsayılan değerler nedir?

Apache 2 zaman aşımları var onların docs diyor:

  • CoreConnectionPNames.SO_TIMEOUT = 'http.socket.timeout' için zaman aşımı soket zaman aşımı milisaniye cinsinden (SO_TIMEOUT), tanımlar Verileri beklemek veya farklı bir şekilde koymak, birbirini izleyen iki veri paketi arasında maksimum bir süre hareketsiz kalmak). Sıfırın zaman aşımı değeri sonsuz bir zaman aşımı olarak yorumlanır. Bu parametre java.lang.Integer türünde bir değer bekler. Bu parametre ayarlanmamışsa, okuma işlemleri zaman aşımına uğramamaktadır (sonsuz zaman aşımı).

  • CoreConnectionPNames.CONNECTION_TIMEOUT = 'http.connection.timeout': Bir bağlantı kurulana kadar milisaniye cinsinden zaman aşımı belirler. Sıfırın zaman aşımı değeri sonsuz bir zaman aşımı olarak yorumlanır. Bu parametre java.lang.Integer türünde bir değer bekler. Bu parametre ayarlanmamışsa, bağlantı işlemleri zaman aşımına uğramamaktadır (sonsuz zaman aşımı).

Bu 2 zaman aşımı için Android kaynaklarını varsayılan değerler olarak aramayı denedim, ancak bulamadı. Bu zaman aşımları için varsayılan değerler nedir bilen var mı? Değerlerin belirlendiği kaynaklara ya da bu konuyla ilgili resmi bir dokümana bir link almak istiyorum (sadece bir fikir duymak için).

+0

Olabilir bu yardım: 'Uzun zaman aşımı = stub._getServiceClient() .getOptions() .getTimeOutInMilliSeconds (); '? – Danijel

cevap

2

gibi bir şey kullanarak varsayılan almanız mümkün olmaz (veya set ne olursa olsun değerler) şunlardır:

DefaultHttpClient h; 
// ... 
Log.d(TAG, "http.socket.timeout: " + 
     h.getParams().getParameter("http.socket.timeout")); 
Log.d(TAG, "http.connection.timeout: " 
     + h.getParams().getParameter("http.connection.timeout")); 

Eğer gerçekten neyi varsayılan değerler bilmek istiyorsanız denemeye değer (sadece değerleri kendiniz belirlemenin aksine).

+0

'http.socket.timeout: null' ve' http.connection.timeout: null' döndürür. Her ihtimale karşı, tam olarak başlatılamayan herhangi bir potansiyeli dışlamak için bir talepte bulunduktan sonra bunu aradım. Neyse teşekkürler. Yanıtınız için –

10

Sadece kod bölümünün altında aşağıda deneyin:

Benim cihazda çalışır
import android.net.http.AndroidHttpClient; 
... 
     AndroidHttpClient h = AndroidHttpClient.newInstance("My http client"); 
     // ... 
     Log.d(TAG, "http.socket.timeout: " + h.getParams().getParameter("http.socket.timeout")); 
     Log.d(TAG, "http.connection.timeout: " + h.getParams().getParameter("http.connection.timeout")); 

:

12-02 16:27:54.119 D/Exam(17121): http.socket.timeout: 60000 
12-02 16:27:54.119 D/Exam(17121): http.connection.timeout: 60000 
+0

teşekkürler. –

İlgili konular