RSSReaderを作る(2)
なんか時間かかってしまった。そもそもRSSReaderを作ろうと思ったきっかけは、「非同期処理」と「XMLのparse」という処理が必須になるから。その辺の経験を積んでおくことは悪いことではないだろう、と。
また、android.comのTutorialにNotePadのsampleがあって、アレでListを扱っているので、RSSのitemのリストを使うようにするのにも流用が効くのかな?というくらいの根拠で。
そしたら、第4回 簡単なRSSリーダーを作ってみる | 日経 xTECH(クロステック)というサイトを発見してしまったのである。
とりあえず、やりたいことが一通り説明されていて、勉強になった。NotePad Tutorialで、ちょっと分かりにくかったListの扱いも分かるようになったし、この間httpclientを作ろうとして苦労していた部分も、まさかURL classにopenconnection()なんてメソッドがあったとは。まるごと取ってくるだけなら、InputStreamとして、簡単にダウンロードできる。
InputStream is = url.openConnection().getInputStream();
そしたら、このisをXmlPullParserに食わせれば良い、と。
非常に参考になりました。
しかし、残念なのは、エミュレータが何かおかしいことである。エミュレータでは、10回に1回くらいしかネットに接続できない。実機持ってないから、こういう時に立ち往生してしまう。たまにネット接続できるもんだから、余計に対処の仕方がわからない。java.net.UnknownHostExceptionが出るんだけど、どうなっているんだろう?*1