2011-07-25 13 views
3

アンドロイドエミュレータのデータをローカルホストのWebに送信して、結果を取得したい。AndroidでURLを使用するとIOExceptionが発生する:不正なipv6アドレス

String temp = "http://10.0.2.2:8888/json/rec?user_data=" + user_data + "&friends=" + friends; 
URL url = new URL(temp); 

HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); 
urlConnection.setReadTimeout(5000); 
InputStreamReader is = new InputStreamReader(urlConnection.getInputStream(), "UTF-8"); 
String output = ""; 
while(is.ready()) { 
    output += is.read(); 
} 

ここは例外です。

java.io.IOException: Malformed ipv6 address: [10.0.2.2:8888] 

それはなぜですか? 誰かが私を助けることができますか? ありがとうございます。

答えて

5

将来のリリースで修正された既知のバグです。

http://code.google.com/p/android/issues/detail?id=12724

簡単な修正は... URLにホスト名、ポートを受け入れるものを別のコンストラクタを使用してファイルにある

URL(String protocol, String host, int port, String file) 

EDITお使いの場合には

、それは希望be

URL url = new URL("http", "10.0.2.2" , 8888 , "json/rec?user_data=" + user_data + "&friends=" + friends); 
+0

こんにちは、ありがとう。私はJAVA文書でURLを読みました。そして私はいくつかの質問があるので、私はこのようにURLを設定する:プロトコル= http、ホスト= 10.0.2.2、ポート= 8888、ファイル=? – cht

+0

編集された回答です。 – Kal

0

おそらくホストにこれを意味するコロンは数字のIPv6アドレスです

関連する問題