私が構築したWebサービスを使用して、URL自体にパラメーターとして渡された文字列を格納するために、AndroidアクティビティでURLにアクセスしたいと考えています。この時点で、URL にアクセスしてそれが発生することを確認したいだけで、後で結果 (リクエストが返すもの) で何かを行うことを心配します。私はHttpURLConnectionを使用しています。次のエラーが表示されます。
D/SntpClient( 59): request time failed: java.net.SocketException: Address fami
ly not supported by protocol
私のコードは次のとおりです。
public void storeScore()
{
Log.d("storeScore","is running");
HttpURLConnection con = null;
//DefaultHttpClient
try {
URL url = new URL("http://www.google.com");
con = (HttpURLConnection) url.openConnection();
con.setReadTimeout(10000);
con.setConnectTimeout(15000);
con.setRequestMethod("GET");
con.setDoInput(true); //also tried without this
con.setDoOutput(true); //also tried without this
con.connect();
Log.d("storeScore","got to connect");
//not really reading the result at this point:
//BufferedReader reader = new BufferedReader(new InputStreamReader(con.getInputStream(), "UTF-8"));
//String payload = reader.readLine();
//reader.close();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
Log.d("MalformedURLException",e.getMessage());
} catch (IOException e) {
// TODO Auto-generated catch block
Log.d("IOException",e.getMessage());
e.printStackTrace();
}
}
アプリの Android マニフェストには、両方の前提条件が含まれています。
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
このメソッド storeScore() は、onCreate で作成されて開始されたスレッドから実行されます。私はここで何か間違っていますか?ここに追加していない関連情報が必要な場合は、教えてください。質問を編集します。ありがとう、私は助けに感謝します。