
防犯や防災時に役立グッズが多数 「備えて安心グッズのお店」
お得なわけあり商品を多数取り揃え 「訳ありお得館」
厳選デジタルグッズのお店 「おもしろデジモノのデジモノ屋」
厳選食品お取り寄せのお店 「まんぷく屋」
美と健康を考えるお店 「La beaut」
AndroidでHTTP通信3 ― 2011年11月22日 11時38分58秒
サーバー側のプログラムが完成したので、Android側のプログラムを作成します。
まずは、簡単にソフトを立ち上げたらサーバーに接続し、画面に結果を出すだけの
プログラムを作ります。
サーバーへの接続ですが、いくつか方法があるようなのですが、
今回は、DefaultHttpClientを利用したものと、
HttpURLConnectionを利用したものをつくります。
基本的にはurlを渡して結果を返すだけです。
urlにはパラメータも設定済みで受け取る予定です。
まずは、DefaultHttpClientを使用してGETで接続する場合のサンプルソースです。
*******************************************
public String doGet( String url )
{
HttpResponse response = null;
try
{
HttpGet httpget = new HttpGet( url );
DefaultHttpClient client = new DefaultHttpClient();
response = client.execute( httpget );
int status = response.getStatusLine().getStatusCode();
if ( status != HttpStatus.SC_OK )
throw new Exception( "" );
return EntityUtils.toString( response.getEntity(), "UTF-8" );
}
catch ( Exception e )
{
e.printStackTrace();
return null;
}
}
*******************************************
urlを受け取ったら、executeで通信処理を行っています。
responseで結果を受け取り返しています。
続いてはHttpURLConnectionを利用したサンプルです。
*******************************************
public String doGet2( String addr )
{
HttpURLConnection http = null;
InputStream in = null;
try
{
URL url = new URL(addr);
http = (HttpURLConnection)url.openConnection();
http.setRequestMethod("GET");
http.connect();
in = http.getInputStream();
byte[] line = new byte[1024];
in.read(line);
String src = new String(line);
return src;
}
catch(Exception e)
{
return null;
}
finally
{
try
{
if (http != null) http.disconnect();
if (in != null) in.close();
}
catch (Exception e)
{
}
}
*******************************************
こちらもurlを受け取りconnectで通信を行います。
getInputStreamで結果を受け取り内容を返しています。
次は、メインの作成を行って通信結果を確認したいと思います。
まずは、簡単にソフトを立ち上げたらサーバーに接続し、画面に結果を出すだけの
プログラムを作ります。
サーバーへの接続ですが、いくつか方法があるようなのですが、
今回は、DefaultHttpClientを利用したものと、
HttpURLConnectionを利用したものをつくります。
基本的にはurlを渡して結果を返すだけです。
urlにはパラメータも設定済みで受け取る予定です。
まずは、DefaultHttpClientを使用してGETで接続する場合のサンプルソースです。
*******************************************
public String doGet( String url )
{
HttpResponse response = null;
try
{
HttpGet httpget = new HttpGet( url );
DefaultHttpClient client = new DefaultHttpClient();
response = client.execute( httpget );
int status = response.getStatusLine().getStatusCode();
if ( status != HttpStatus.SC_OK )
throw new Exception( "" );
return EntityUtils.toString( response.getEntity(), "UTF-8" );
}
catch ( Exception e )
{
e.printStackTrace();
return null;
}
}
*******************************************
urlを受け取ったら、executeで通信処理を行っています。
responseで結果を受け取り返しています。
続いてはHttpURLConnectionを利用したサンプルです。
*******************************************
public String doGet2( String addr )
{
HttpURLConnection http = null;
InputStream in = null;
try
{
URL url = new URL(addr);
http = (HttpURLConnection)url.openConnection();
http.setRequestMethod("GET");
http.connect();
in = http.getInputStream();
byte[] line = new byte[1024];
in.read(line);
String src = new String(line);
return src;
}
catch(Exception e)
{
return null;
}
finally
{
try
{
if (http != null) http.disconnect();
if (in != null) in.close();
}
catch (Exception e)
{
}
}
*******************************************
こちらもurlを受け取りconnectで通信を行います。
getInputStreamで結果を受け取り内容を返しています。
次は、メインの作成を行って通信結果を確認したいと思います。
最近のコメント