使用rssutil.jar进行RSS解析不适用于Android

时间:2011-01-02 08:35:09

标签: android rss

我是Android应用程序开发的新手。我正在尝试使用rssutil.jar构建RSS Feed解析器。 这部分代码是:

private void ReadRSS() {
String tag = "READRSS";
try {
 //Create Parser
 RssParser parser = RssParserFactory.createDefault();

 //Parse out URL
 URL url = new URL("http://www.espncricinfo.com/rss/content/story/feeds/0.xml");

 Rss rss = parser.parse(url);
 if(rss.getChannel() ==null)
 {
  tv.append("NULL");
  return;
 }

 Collection items = rss.getChannel().getItems();
 if(items!=null && !items.isEmpty())
 {
  for(Iterator i = items.iterator();i.hasNext();)
  {
   Item item = (Item)i.next();
   tv.append("Title:"+item.getTitle());
   tv.append("Link:" + item.getLink());
   tv.append("Description:"+item.getDescription());
  }
 }

} catch (RssParserException e) {
 // TODO Auto-generated catch block
 Log.v(tag, "RSSParserException");
 e.printStackTrace();
} catch (MalformedURLException e) {
 // TODO Auto-generated catch block
 Log.v(tag, "MalformedURLException");
 e.printStackTrace();
} catch (IOException e) {
 // TODO Auto-generated catch block
 Log.v(tag, "IOException");
 e.printStackTrace();
}

}

这个代码在作为java应用程序执行时效果很好但是当我尝试在Android手机或模拟器中执行时我得到rss.getChannel()为null,有谁能让我知道为什么java之间的操作有区别和这个案例中的android?我该怎么办才能让它适用于Android手机?

感谢。

1 个答案:

答案 0 :(得分:0)

很可能您忘记在AndroidManifest.xml中设置使用互联网的权限。

<uses-permission android:name="android.permission.INTERNET"></uses-permission>