2013年9月6日金曜日

[android]HTTP GETする

ドコモからiPhoneがでる(?)らしく、早くiOSアプリのほうをなんとかしたいのですが、これまでのことをまとめておきたくて私がよく使う手を公開します。

HTTP GETして、Stringが欲しいことってよく(?)ありますよね。
WEB APIでレスポンスがJSONで返ってくるというのはよくあるようにおもいます。

TorifukuHttpClient.Decoder decorder = new TorifukuHttpClient.Decoder() {
@Override
public Object decode(TorifukuHttpClient client,
InputStream is) {
return client.convertString(is, "SJIS");
}
};
TorifukuHttpClient client = new TorifukuHttpClient();
String text = (String) client.getContent("http://google.com", decorder);


画像をダウンロードして、Bitmapにしたいこともよく(?)ありますよね。

TorifukuHttpClient.Decoder decorder = new TorifukuHttpClient.Decoder() {
@Override
public Object decode(TorifukuHttpClient client,
InputStream is) {
return BitmapFactory.decodeStream(is);
}
};
TorifukuHttpClient client = new TorifukuHttpClient();
Bitmap bmp = (Bitmap) client.getContent("https://lh4.googleusercontent.com/--dq8niRp7W4/URquVgmXvgI/AAAAAAAAAbs/-gnuLQfNnBA/s1024/A%252520Song%252520of%252520Ice%252520and%252520Fire.jpg", decorder);

ところで、TorifukuHttpClient て何だ? という話ですが、すでに使いやすいとってもすばらしいApache HTTP Clientを私がよく使う形にしてまとめたクラスです。
GitHubで公開しています。

  デルカへ

0 件のコメント:

コメントを投稿