2011-01-17 17 views
2

Ich versuche, einen Android RSS Reader zu entwickeln. Ich möchte android.sax benutzen, um einige Informationen von einem rss zu lesen, aber ich bin nicht sicher, wie man es macht. Ich brauche ein Tutorial über Android.sax oder ein Beispiel dazu. Kann mir bitte jemand helfen?Android RSS-Reader

Antwort

1

Es ist ziemlich einfach, eine Implementierung eines SAX-Parsers einzurichten, aber der schwierige Teil ist, jeden beliebigen Feed unter der Sonne parsen zu können.

Sie müssen auf alle Formate RSS 1, RSS 2, Atom usw. gerecht werden. Auch dann müssen Sie mit schlecht formatierten Feeds zu kämpfen haben.

Ich hatte in der Vergangenheit mit ähnlichen Problemen konfrontiert, so beschlossen, meine Feed-Parsing auf einem Server und nur die geparsten Inhalte zu bekommen. Dadurch kann ich komplexere Bibliotheken und Parser ausführen, die ich modifizieren kann, ohne Updates für meine App auszugeben.

Ich habe den folgenden Dienst auf AppEngine läuft, die für eine viel einfachere XML/JSON Parsing an Ihrem Ende ermöglicht. Es gibt eine feste und einfache Struktur für die Antwort. Sie können diese

zum Parsen verwenden

http://evecal.appspot.com/feedParser

Sie beide POST senden und GET-Anforderungen mit den folgenden Parametern.

Feedlink: Die URL der RSS-Feeds Antwort: JSON oder XML als Antwortformat

Beispiele:

Für eine POST-Anfrage

curl --data-urlencode „Feedlink = http : //feeds.bbci.co.uk/news/world/rss.xml“--data-urlencode "response = json" http://evecal.appspot.com/feedParser

Für GET-Anfrage

evecal.appspot.com/feedParser?feedLink=http://feeds.nytimes.com/nyt/rss/HomePage & response = xml

Mein Android-App "NewsSpeak" verwendet das auch.

+0

Ich habe versucht den JSON Weg, aber leider scheint es, dass die Zeitstempel fehlen ... Das Anzeigen eines Feeds ohne PubDate ist ziemlich nervig. –

4

Ich denke, dass this genau das ist, was Sie suchen. Es ist ein Artikel über das Arbeiten mit XML in Android auf IBM developerWorks. Das Beispiel zeigt, wie eine RSS-XML-Antwort analysiert wird.

+0

Danke, aber ich brauche ein Beispiel mit android.sax – Alex

+5

Haben Sie tatsächlich diesen Artikel gelesen? Es zeigt nur mehr Möglichkeiten, dies zu tun, unter anderem gibt es auch ein Beispiel mit der Android SAX-Implementierung. Also lies es einfach. –

Verwandte Themen