2011-02-03 26 views

回答

2

Ksoap不能在代理之後工作。爲了使這個工作.. 從sourceforge下載HttpTransportSE.java和ServiceConnectionSE.java。

使用HttpTransportSE和ServiceConnectionSE創建一個包。

在ServiceConnectionSE構造:

String myProxy=android.net.Proxy.getDefaultHost() ; 
      int myPort=android.net.Proxy.getDefaultPort(); 

      if(myProxy!=null){ 
       Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(myProxy, myPort)); 
       connection = (HttpURLConnection) new URL(url).openConnection(proxy); 
      } 
      else 
      { 
       connection = (HttpURLConnection) new URL(url).openConnection(); 
      } 

現在的地方,我們稱之爲HttpTransportSE.call()方法,確保它指向UR自己的包,其中有這樣兩個文件。

+0

你能解釋如何做到這一點,因爲我已經下載了文件並將這些文件複製到一個新的包中,但他們給錯誤。你也可以給這些文件的鏈接。 – Waseem 2012-02-28 18:19:50

0

據我所知,你必須在android操作系統設置本身設置代理,它會正常工作。

+0

不,我已經做到了..它不工作..謝謝你的答案 – Ads 2011-02-03 18:27:00

0

替換這個..

//Timeout in milliseconds 

int timeout=60000; 
AndroidHttpTransport androidHttpTransport=new AndroidHttpTransport(url, timeout); 
1

   大家好,KSOAP2.6.5的最新版本[測試並驗證它]已修復了代理身份驗證問題。 HTTPTransportSE構造函數現在接受java.net.Proxy實例作爲參數以及URL。該方法會像
                        HttpTransportSE httpTransport=new HttpTransportSE(proxy,URL);
   如果配置了代理服務器,如果需要身份驗證,然後使用 Authenticator類設置你的代理證書,並有成功。 HTH,如果不寫我回