Я хочу создать приложение, которое (помимо прочего) может анализировать каналы, загруженные по сети. Учитывая, что стандартные Java + Core Java-библиотеки не предоставляют службы синтаксического анализатора каналов, и я не хочу писать ее самостоятельно, можете ли вы назначить синтаксический анализатор Java-каналов, который будет работать на маломощных устройствах Android.
Я только начинаю изучать Android, закончив примеры Hello World, и я хотел бы перейти к своему первому приложению. Я хочу сделать что-то, что анализирует некоторые каналы ATOM или RSS и отображает некоторый контент в GridView.
Похоже, что пользовательский интерфейс хорошо документирован в Android, и у Sun есть много примеров того, как извлечь URL, однако я не совсем понимаю, как выполнять анализ фида.
Ранее, когда я делал подобные вещи в Pythion, я использовал парсер общего назначения, который может анализировать почти все (например, RSS, ATOM). Существует множество хороших реализаций Python такого рода вещей, однако я не нашел ничего подобного в стандартной библиотеке Android.
На работе я занимался (легким) обслуживанием корпоративных java-приложений. Общая практика заключается в том, чтобы брать любые классы, которые вам нравятся (например, анализатор каналов Jakarta Commons), и просто объединять их в CLASSPATH. Настольные приложения не заботятся о том, насколько велики зависимости, однако я уверен, что это большая проблема при компиляции пакета APK для использования на устройстве с ограниченными возможностями. Конечно, я должен быть очень разборчив в том, от каких банок я зависел, верно? Могу ли я просто использовать те же классы, что и для настольных приложений?
Примечания:
- Мой фон написан на Python (только с легким опытом работы с Java)
- В идеале я хотел бы использовать что-то популярное (но не самое лучшее), чтобы получить поддержку.
- Еще лучше, я хотел бы использовать встроенную библиотечную функциональность, поэтому мне не нужно добавлять какие-либо сторонние Jar-файлы для раздувания моего приложения.
- В настоящее время ориентирован на Android 1.5 (потому что это то, что работает на моем устройстве)