Как я могу ускорить разбор Android XML?

Добрый день (в зависимости от того, где вы живете)!

Я довольно новичок в разработке для Android, и в настоящее время я работаю над переносом функциональности из существующего приложения для iOS на Android. Частью этой функции является анализ "большого" (~ 13 000 строк) файла XML XML, который содержит около 500 записей. Я потратил где-то от 10 до 15 часов, исследуя анализ XML на Android И пробуя основные парсеры XML: DOM, SAX и Pull-анализ. Вот мои результаты, выполненные в эмуляторе на моем компьютере (32-битная Windows Vista, 2,2 ГГц двухъядерный процессор, 3 ГБ ОЗУ):

SAX: ~ 6:00 минут

Pull-разбор: ~ 4: 00 минут

ДОМ: Больше 4 часов, но я не успел это сделать, когда у меня была эта реализация.

Я также попробовал этот читатель RSS от github, но это заняло> 10:00 минут:

https://github.com/matshofman/Android-RSS-Reader-Library

Реализации для SAX, PP и DOM были взяты из потоков stackoverflow.com, поэтому я уверен, что не сделал в них ничего нестандартного (хотя я не исключаю этого). Я решил обратиться к большей, более опытной толпе, чтобы получить некоторые идеи о том, что еще я могу попробовать.

У меня нет никакого контроля над форматом файла. Если бы я реализовывал этот сквозной проект, я просто написал бы веб-службу, которая выполняла всю тяжелую работу на сервере, а затем отправляла небольшой компактный сериализованный JSON-список. Вместо этого у меня есть файл строки 13K. :)

Любое понимание того, что я могу сделать? Кажется, это довольно распространенная проблема, но большинство ответов просто говорят о том, чтобы попробовать один из основных синтаксических анализаторов XML. В моем случае я пробовал все три, и даже самый быстрый кажется слишком медленным.

Что я делаю неправильно? Существуют ли какие-либо нормальные проблемы "новичков", с которыми обычно сталкиваются люди при выполнении анализа XML по сети на Android ???

Заранее благодарю за любую помощь, которую вы можете оказать!

Ответы на вопрос(2)

Ваш ответ на вопрос