これが私の問題です:
自己署名証明書を使用して、サーバーで HTTPS リクエストを作成したいと考えています。Galaxy S2 (v4.0.3)、Nexus S (4.0.4)、Xperia Ray (4.0.3)、Galaxy Ace (2.3.6) の WLAN で正常に動作します。
3Gでテストすると、Galaxy AceとXperia Rayでのみ動作します。他のものでは、Socket is closed: java.net.SocketException
.
このページで、解決策を見つけました。request プロパティがありましたConnection : close
。しかし、このヘッダーがないと、別のエラーが発生します: Handshake timeout
.
これらの異なる結果を得るために、これらのデバイスで何が大きく異なるのでしょうか?
https リクエストには、javax.net.ssl
パッケージを使用します。リクエストにはクライアントの秘密鍵を使用します。
編集:私は他のSIMカードでテストしましたが、それは奇妙です.1つでは、Nexus Sで動作しますが、Galaxy Sでは動作しません.2番目では、誰でも正常に動作します. 私の結論は次のとおりです。一部のオペレーターは、特定の要求またはデータ転送を制止する可能性があります。理由はわかりません。詳細については連絡します
EDIT2: ここで の解決策:アプリが3gデータプロキシ設定を使用しないようにする方法