2012-03-28 3 views
6

私はアンドロイドアプリを開発しています。4.0(ics)より前のアプリでは、WiFiと3Gデータ接続でhttpとhttpsバックエンドに接続できます。しかし、私のICS 4.0.3デバイスでは、アプリはWiFi経由でhttpsに接続するだけです(Wi-Fiと3gの両方でhttpに接続できます)。手動でAPN設定に行き、プロキシを削除することで、私のアプリは3g経由でhttpsバックエンドに接続できることに気付きました。だから私の質問は、私はどのように強制することができますhttpclientNOTコードを介してプロキシ設定を使用しますか?ありがとう3gデータプロキシ設定を使用しないようにアプリケーションを強制する方法

+4

さて私は、自己の答えができないためには...ここで私は HttpHostプロキシ=新しいHttpHost(ConnRouteParams.NO_HOST)私の問題を解決した方法です。 HttpClientクライアント=新しいDefaultHttpClient(params); client.getParams()。setParameter(ConnRoutePNames.DEFAULT_PROXY、proxy); 誰かを助けてくれることを願っています。 –

+0

これは私のために働くが、私はそれについて多くを理解していない - プロキシを使用しないことには欠点があるのだろうか?プロキシの目的は何ですか? –

+0

これは、プロキシが内部ネットワークなどで使用されている場所でのみ動作すると思います。プロキシがデータに必要なキャリアの場合、これは機能しない可能性がありますか? – Dori

答えて

4

まず、おかげでクールデュードあなた自身の質問に答える。私は同じ問題を抱えていましたが、HttpClientを使用せず、HttpURLConnectionを直接使用していました。ソリューションは以下である場合には :

myUrl.openConnection(java.net.Proxy.NO_PROXY); 
+0

すべてのプラットフォームでNO_PROXYを設定するのか、4.0.3/4.0.4だけでNO_PROXYを設定しますか? –

+1

SSL接続の場合のみですが、すべてのプラットフォームに適用されます。魅力のように動作します。 – mdiener