- Processing and Parsing XML in Android
- What is XML?
- XML elements
- XML Parsing
- Steps involved in XML parsing
- XML parsing example
- Conclusion
- Android XML Parser Example with XML from SD Card, URL or Assets
- Работа с XML
- Ресурсы XML и их парсинг
- Работа с XML в Android
- Начало работы
- XML в Android
- Парсеры XML
- Часто встречающиеся аббревиатуры
- Приложение для чтения новостей для Android
- Использование SAX
- Упрощение использования SAX в Android
- Использование DOM
- Принимающий парсер XML
- Создание документов XML
- Заключение
- Загрузка
- Ресурсы
- Об авторе
Processing and Parsing XML in Android
Sharing data over the internet is very popular. We share our information with the other users over the internet. Let’s take a very common example, since we all are developers and to be more precise, we all are Android Developers and we all must have visited the StackOverflow website whenever we are stuck into some problem in our projects and in every 99 out of 100 cases, we find the solution to our problem. The answer that we get from the StackOverflow website consists of various parts that we are less bothered about. In general, the answers or the questions present on the website contains the id of the question, type of the question, author name of the article or question, publishing data, URL and many other things are there on the website. But we want only meaningful data i.e. we want answers and the authors and nothing else.
The problem arises when you want to access the data of a particular website in your Android Application. This is because the data present on the websites are in JSON format or in XML format. So, in order to use that data or to extract the meaningful information from that data, you have to parse that XML file or a JSON file.
So, in this blog, we will learn how to process and parse the XML data in Android. So, let’s get started.
What is XML?
XML stands for Extensible Markup Language. It is a set of rules that are used to encode data or documents in a Machine-readable language. There are many websites that use an XML format to share data on the internet. For example, many blogging websites use an XML format to share data between users. So, XML parsing and processing become an important task to use that data in our Android Application.
XML elements
In general, an XML file consists of a number of elements that together make an XML file. They are the basic building blocks of XML document. These elements are used to store some text elements, attributes, media, etc. Below is the syntax of XML element:
Here, element-name is the name of the element and attributes are used to define the property of XML element. Following is an example of an XML document that is used to describe the data of the student:
We can broadly divide the XML elements in four parts:
- Prolog: It is the first line that contains the information about the XML file i.e. it is the first line of the XML file.
- Events: An XML file contains a number of events like document start, document end, Tag start, Tag end, etc.
- Text: In between the tags(opening and closing), there can be some text. For example, in the above example, “John” is the text.
- Attributes: These are the properties of XML elements.
XML Parsing
So, we have seen the introduction of XML and our next task is, How to parse the XML in Android? So, let’s find out.In Android, there are various parsers that can be used to parse the XML file in Android. Some of these are:
- XMLPullParser
- DOM Parser
- SAX Parser
Among these three parsers, XMLPullParser is the most commonly and most widely used parsers in Android. This is because XMLPullParser is very efficient and easy to use. Also, unlike the DOM Parser which loads the whole file in the memory and then parses it, the XMLPullParser consumes less memory.
Steps involved in XML parsing
Following are the steps that are involved in XML parsing:
- Analyze the feed: There are many cases when you will be provided with a number of data but you need only few of them. SO, before parsing the XML, your first step should be to find the desired element in the XML data. For example, here is example of XML file of StackOverflow:
Here, if you want to extract the data present in the entry tag and the data of its sub tags then you should keep note of these things.
- Create XMLPullParser object: Our next step is to create the object of XMLPullParser and specify the file name for the XMLPullParser that contains XML. You can use a file or a stream. Following is the code to create an object of the XMLPullParser and then passing the file name for the XMLPullParser:
- Read the desired data: Our last step is to parse the data of the XML file. The following readFeed() function is used to parse the XML file and extract only the values of entries and store it into a list:
Here, XMLPullParser.END_TAG is used to find if the parser has reached to the last tag of the file or not. If it has reached then return and it has not reached then we will check for the entry tag and if found then will add the value to the entries list. If the values are not found be to of entries type then we can skip the parser. At last, we return entries.
Following are the methods that can be used while parsing an XML file:
- getEventType(): This method is used to get the event type. For example, Document start, Document End, Tag start, Tag end, etc.
- getName(): This is used to get the tag name in a file. For example, in the above code, the tag name is entry.
- getAttributeValue(): This method is used to get the attribute value of a particular tag.
- getAttributeCount(): It returns the total number of attributes of the current tag.
- getAttributeName(int index): It returns the attribute name at a particular index.
- getColumnNumber(): It returns the current column number using a 0 based indexing.
- getName(): It returns the name of the tag.
- getText(): It returns the text present in a particular element.
XML parsing example
Now, let’s do one example to understand the concept of XML parsing ina very easy and clear manner.
Open Android Studio and create a project with Empty Activity template.
The very first step is to create the XML file. Either you create your own XML file or you can use mine. To create an XML file, go to java folder and then right click on it. Then click on New > Folder > Assets folder and then OK. One assets folder will be created for you. Now right click on that folder and create a file and name it as example.xml. Following is the XML content of example.xml file:
This is a simple example of student data containing the name, surname, mobile and section of the student. In this example, we will extract the name, surname and section of the student. We will ignore the mobile number.
Now, let’s code for the UI part of our application. Here we will display the desired data on a TextView. So, open the activity_main.xml file and add the below code:
So, we are done with the UI part. Now, let’s write the code for the XML parsing. Below is the code for the MainActivity.kt file:
Now, run the application on your mobile phone and try to add more data to your XML file i.e. the example.xml file.
Conclusion
In this blog, we learned about XML parsing in Android. We learned how to parse the data present in the XML format in Android Application. We saw how to use XMLPullParser to do XML parsing. At last, we did one example of XML parsing. You can get more contents about XML parsing at the Android Developer Website.
Источник
Android XML Parser Example with XML from SD Card, URL or Assets
XML parsing could be one of the most basic requirement on your Android application. In today’s tutorial, we are going to read XML files using three input sources. There can be three sources of your XML:
1. XML from device SD Card. Your dynamic XML file could be downloaded first for offline use.
2. XML from a URL. You could be parsing data from your online database or RSS feed. Works if device is online only.
3. XML from your app’s assets folder. Your XML file is not dynamic so it is better to put it in the asset’s folder where it cannot be change.
By the way, we’ll be using SAX parser here. I think that for mobile apps, SAX parser is better to use than DOM parser.
DOM parser consumes more memory because it loads the whole XML data to the device memory while SAX parser does an event driven approach. SAX parser processes each line of the XML without loading it to the device memory first.
Our XML structure looks like this:
MainActivity.java code – Here you can change the value of x to 1,2 or 3 to change the input source. Read comments on code.
XmlContentHandler.java – We’ll extend the default handler.
ParsedDataSet.java – You can use your own object class if the XML you’re parsing is for a more specific data object. For example, you are parsing only for “Owners” and NOT “Owners & Dogs” like what we have.
Our AndroidManifest.xml will have internet permissions because we use a URL input
Our code output on the device look simply like this:
Источник
Работа с XML
Ресурсы XML и их парсинг
Одним из распространенных форматов хранения и передачи данных является xml . Рассмотрим, как с ним работать в приложении на Android.
Приложение может получать данные в формате xml различными способами — из ресурсов, из сети и т.д. В данном случае рассмотрим ситуацию, когда файл xml хранится в ресурсах.
Возьмем стандартный проект Android по умолчанию и в папке res создадим каталог xml . Для этого нажмем на каталог res правой кнопкой мыши и в контекстном меню выберем New -> Android Resource Directory :
В появившемся окне в качестве типа ресурсов укажем xml :
В этот каталог добавим новый файл, который назовем users.xml и который будет иметь следующее содержимое:
Это обычный файл xml, который хранит набор элементов user. Каждый элемент характеризуется наличием двух подэлементов — name и age. Условно говоря, каждый элемент описывает пользователя, у которого есть имя и возраст.
В папку, где находится основной класс MainActivity, добавим новый класс, который назовем User :
Этот класс описывает товар, информация о котором будет извлекаться из xml-файла.
И в ту же папку добавим новый класс UserResourceParser :
Определим для класса UserResourceParser следующий код:
Данный класс выполняет функции парсинга xml. Распарсенные данные будут храниться в переменной users. Непосредственно сам парсинг осуществляется с помощью функции parse . Основную работу выполняет передаваемый в качестве параметра объект XmlPullParser . Этот класс позволяет пробежаться по всему документу xml и получить его содержимое.
Когда данный объект проходит по документу xml, при обнаружении определенного тега он генерирует некоторое событие. Есть четыре события, которые описываются следующими константами:
START_TAG : открывающий тег элемента
TEXT : прочитан текст элемента
END_TAG : закрывающий тег элемента
END_DOCUMENT : конец документа
С помощью метода getEventType() можно получить первое событие и потом последовательно считывать документ, пока не дойдем до его конца. Когда будет достигнут конец документа, то событие будет представлять константу END_DOCUMENT :
Для перехода к следующему событию применяется метод next() .
При чтении документа с помощью метода getName() можно получить название считываемого элемента.
И в зависимости от названия тега и события мы можем выполнить определенные действия. Например, если это открывающий тег элемента user, то создаем новый объект User и устанавливаем, что мы находимся внутри элемента user:
Если событие TEXT , то считано содержимое элемента, которое мы можем прочитать с помощью метода getText() :
Если закрывающий тег, то все зависит от того, какой элемент прочитан. Если прочитан элемент user, то добавляем объект User в коллекцию ArrayList и сбрываем переменную inEntry, указывая, что мы вышли из элемента user:
Если прочитаны элементы name и age, то передаем их значения переменным name и age объекта User:
Теперь изменим класс MainActivity, который будет загружать ресурс xml:
Вначале получаем ресурс xml с помощью метода getXml() , в который передается название ресурса. Данный метод возвращает объект XmlPullParser , который затем используется для парсинга. Для простоты просто выводим данные в окне Logcat :
Источник
Работа с XML в Android
Описание: Android – это современная операционная система с открытым кодом, ориентированная на мобильные устройства и включающая в себя SDK, который позволяет создавать приложения с широким кругом возможностей. Возможности Android особенно привлекательны, если приложения должны взаимодействовать с Web-сервисами, поскольку в этом случае они обязаны понимать XML – своего рода язык Web. В этой статье рассказывается о нескольких различных вариантах работы с XML в Android, а также об их использовании при создании приложений.
Уровень сложности: средний
Начало работы
Прочитав эту статью, вы узнаете о создании Android-приложений, способных работать с XML в Интернете. Программы для Android пишутся на Java™, поэтому для понимания материала необходим опыт использования этого языка программирования. Кроме того, вам понадобится инструментарий разработки программного обеспечения для Android (SDK). Все примеры кода, приведенные в этой статье, могут работать с любой версией Android, хотя для их создания использовался SDK 1.5_pre. В принципе приложения для Android можно создавать, имея под рукой только SDK и текстовый редактор, но гораздо проще использовать специальный модуль ADT, подключаемый к Eclipse (Android Developer Tools — инструментарий Android-разработчика). В этой статье используется ADT 0.9 и Eclipse 3.4.2 Java Edition (ссылки на все программы приведены в разделе Ресурсы).
XML в Android
Android представляет собой платформу с открытым кодом для разработки приложений для мобильных устройств. С ее помощью можно получить доступ ко всем компонентам устройства, на котором выполняется эта ОС, начиная от низкоуровневого программирования графики и заканчивая использованием встроенной камеры. В Android есть столько всего интересного, что логично задать вопрос: а зачем вообще задумываться об XML? Однако интерес представляет не столько сам XML, сколько взаимодействие с другими объектами с его помощью. В частности, XML является распространенным форматом для обмена информацией в Интернете, поэтому велика вероятность, что он понадобится вам для доступа к данным в Web. Кроме того, XML может потребоваться для передачи данных, например, Web-сервису. Другими словами, если вы хотите, чтобы ваше приложение для Android работало через Интернет, вам скорее всего придется иметь дело с XML. К счастью, существует множество вариантов работы с XML в Android.
Парсеры XML
Часто встречающиеся аббревиатуры
- API: Application programming interface (Интерфейс прикладного программирования)
- RSS: Real Simple Syndication (Действительно простая синдикация)
- SDK: Software Developers Kit (пакет разработчика программного обеспечения)
- UI: пользовательский интерфейс
- URL: универсальный локатор ресурса
- XML: расширяемый язык разметки
Одной из наиболее привлекательных черт платформы Android является использование языка программирования Java. SDK Android поддерживает не всю, но достаточно большую часть возможностей стандартной среды выполнения Java (Java Runtime Environment – JRE). Cама платформа Java уже долгое время поддерживает множество различных способов использования XML, причем большинство API для Java, ориентированных на XML, доступны в Android. Примерами таких API могут служить объектная модель документов (Document Object Model — DOM) и простой Java API для XML (Java’s Simple API for XML – SAX), которые уже много лет являются частью технологии Java. Обратным примером является более новый потоковый API ( Streaming API for XML – StAX), который не поддерживается в Android (при этом в состав Android входит эквивалентная по своим возможностям библиотека). В Android также недоступен API для связывания с данными XML (Java XML Binding — JAXB). Его безусловно можно реализовать для данной платформы, однако он отличается некоторой тяжеловесностью, которая проявляется в том, что множество экземпляров разных классов часто требуется для представления документов XML. В связи с этим он является менее предпочтительным при создании приложений для портативных устройств, подобных тем, на которых работает Android. Далее мы рассмотрим в качестве примера простой источник XML-данных в Интернете, а также способы их разбора внутри Android-приложения при помощи перечисленных выше API. Мы начнем с рассмотрения основных компонентов простого приложения, работающего с XML-данными, полученными через Интернет.
Приложение для чтения новостей для Android
Ниже будет рассмотрено приложение, получающее информационную ленту RSS с сайта Androidster, популярного среди Android-разработчиков, и трансформирующее ее в набор простых Java-объектов. Этот набор далее будет выступать в качестве содержимого компонента ListView (ссылка на исходный код приведена в разделе Загрузка). Приложение следует классическим принципам полиморфизма: его поведение будет оставаться внешне одинаковым при использовании различных алгоритмов разбора XML. Данная модель легко представима в Java, как показано в листинге 1.
Листинг 1. Интерфейс парсера XML-лент
В листинге 2 показан класс
, являющийся примером простого Java-объекта (Plain Old Java Object — POJO) и служащий для представления определенной структуры данных (сообщения).
Листинг 2. POJO-класс
Класс сообщения, показанный в листинге 2, достаточно прост. Он позволяет скрыть от внешних компонентов некоторые детали своего внутреннего состояния, в частности, он разрешает работать с датами и ссылками как со строковыми объектами, хотя хранятся они в строго типизированном виде (
). Этот класс является классическим примером объекта-значения, обладающего собственной реализацией методов
на основе текущего состояния. Он также реализует интерфейс
, служащий для сортировки (на практике этот метод не нужен, поскольку записи в ленте всегда упорядочены).
Каждая реализация парсера (алгоритма разбора XML) принимает на вход URL RSS-ленты Androidster и открывает HTTP-соединение с указанным сайтом. Эту функциональность логично вынести в абстрактный базовый Java-класс, как показано в листинге 3.
Листинг 3. Базовый класс парсеров лент
Этот базовый класс хранит URL ленты в переменной
и использует его для открытия потока ввода (
). В случае возникновения любых ошибок он просто генерирует исключение типа
, приводящее к быстрому аварийному завершению приложения. Кроме того, класс определяет ряд простых констант для имен тегов. Значение этих тегов иллюстрируется в листинге 4, в котором показан фрагмент информационной ленты.
Листинг 4. Пример ленты XML
Как видно из примера в листинге 4, каждый элемент
соответствует экземпляру класса
. При этом дочерние элементы записи (
и т. д.) соответствуют свойствам
. Теперь, когда вы получили представление о том, как выглядят ленты RSS, можно переходить к рассмотрению их разбора при помощи различных технологий, доступных в Android. В качестве первой такой технологии мы рассмотрим SAX.
Использование SAX
В Java API SAX часто используется в тех случаях, когда требуется быстрый парсер и необходимо минимизировать расход памяти в приложении. Именно поэтому SAX очень привлекателен для использования в мобильных устройствах под управлением Android. При этом при создании приложений для Android этот API можно использовать в точности так же, как и в Java. Реализация интерфейса
, основанная на SAX, показана в листинге 5.
Листинг 5. Реализация парсера на основе SAX
Этот фрагмент кода должен выглядеть привычно для тех, у кого уже есть опыт использования SAX. Большая часть кода заключена в обработчике, что характерно для любого SAX-парсера. Обработчик получает уведомления о событиях от парсера по мере того, как тот разбирает документ XML. В данном случае в роли такого обработчика выступает класс
Листинг 6. Обработчик событий SAX
является наследником класса
, который предоставляет пустую реализацию по умолчанию для обработчиков всех событий, генерируемых SAX-парсером. Благодаря этому базовому классу дочерние классы могут переопределять только методы, которые соответствуют интересующим их событиям.
реализует еще один API, состоящий из метода
. Этот метод возвращает список объектов типа
, составляемый в процессе обработки событий, полученных от SAX-парсера. Кроме того, класс включает две внутренние переменные:
, представляющую собой текущее разбираемое сообщение, и
, в которой хранится текстовое содержимое текстовых вершин. Обе эти переменные инициализируются в методе
, который вызывается при начале разбора документа парсером.
Обратите внимание на метод
в листинге 6. Он вызывается каждый раз, когда парсер встречает открывающий тег в документе XML. В нашем случае значение имеют только теги
, для каждого из которых необходимо создать новый экземпляр типа
. Далее рассмотрим метод
. Он вызывается при разборе содержимого текстовых вершин в XML, которое просто добавляется в переменную
. Наконец, взгляните на метод
, вызывающийся парсером при обнаружении закрывающего тега. В случае, если данный тег соответствует одному из атрибутов сообщения, например,
, устанавливается значение соответствующего свойства объекта, хранящегося в переменной
. При этом значение берется из переменной
. Если же закрывающим тегом является
, то текущее сообщение (
) добавляется в список сообщений. Подобное поведение является классическим примером использования SAX, и в нем нет ничего специфичного для Android. Таким образом, если вы умеете писать SAX-парсеры на Java, то у вас не будет проблем с их созданием для Android. Более того, в SDK Android реализован ряд полезных функций в дополнение к SAX.
Упрощение использования SAX в Android
SDK Android включает вспомогательный класс
. Его использование в парсере SAX показано в листинге 7.
Листинг 7. Реализация SAX-парсера в Android
Обратите внимание, что этот класс по-прежнему способен работать с любыми обработчиками SAX, поэтому в нем используется ранее созданный
. Возможность повторного использования обработчиков является несомненным преимуществом, однако они могут оказаться чересчур сложными. Нетрудно представить, что если придется анализировать значительно более сложные документы XML, обработчик может легко превратиться в неиссякаемый источник ошибок. Например, взгляните еще раз на метод
в листинге 6 и обратите внимание на проверку переменной
на null перед установкой значения свойств. Теперь вернитесь к фрагменту XML, приведенному в листинге 4. Как видите, он включает элементы
, находящиеся вне элемента
. Именно этим объясняется проверка на null, поскольку иначе обработка первого же элемента
приведет к исключению типа
. К счастью, Android включает свой собственный вариант API SAX, благодаря которому можно не писать собственные обработчики. Пример приведен в листинге 8.
Листинг 8. Упрощенная реализация SAX-парсера для приложения Android
Как и было обещано, в этом фрагменте кода не используются классы-обработчики SAX. Вместо этого парсер использует классы из пакета android.sax, входящего в состав SDK. Эти классы помогают моделировать структуру документов XML и добавлять слушатели событий по мере необходимости. В приведенном выше примере декларируется, что документ XML имеет корневую вершину
, у которой есть дочерняя вершина
. Внутри нее располагаются элементы
, для которых добавляются слушатели. Каждый из слушателей реализуется в виде анонимного внутреннего класса, реализующего специальный интерфейс (в данном случае либо
). Обратите внимание, что в этом подходе не приходится отдельно хранить текстовое содержимое, что не только проще, но и эффективнее. При этом обработчик, который передается в вспомогательный метод Xml.parse, автоматически определяется корневым элементом документа.
Подход, продемонстрированный в листинге 8, не является обязательным. Если вас устраивает стандартный способ работы с SAX в Java, вы можете использовать его. В противном случае вы можете работать с SAX через вспомогательные классы, предоставляемые SDK Android. Однако что делать, если вы вообще не хотите использовать SAX? В этом случае есть еще несколько вариантов, одним из которых является DOM.
Использование DOM
Разбор документов XML по принципам DOM полностью поддерживается в Android. Этот API работает точно так же, как в Java-приложениях для серверов и настольных компьютеров. Реализация интерфейса парсера лент RSS на основе DOM показана в листинге 9.
Листинг 9. Реализация парсера XML-лент на основе DOM
Как и в случае c SAX, в данном коде нет ничего специфичного для платформы Android. Парсер DOM считывает содержимое всего документа в память и предоставляет методы API для обхода дерева XML, позволяющие находить нужную информацию. Этот подход весьма очевиден и в некотором смысле проще реализаций, основанных на SAX. Однако использование DOM, как правило, требует больше памяти, поскольку в нее считываются все узлы XML. Это может представлять собой реальную проблему для портативных устройств под управлением Android, за исключением случаев разбора заведомо небольших документов XML. Учитывая это, нетрудно было предположить, что SAX должен быть значительно популярнее среди разработчиков Android-приложений, поэтому именно для него были созданы вспомогательные классы. Кроме SAX и DOM, платформа поддерживает и третий тип парсеров, а именно принимающие парсеры (pull parsers).
Принимающий парсер XML
Как было замечено выше, Android не поддерживает API StAX. Однако в состав Android входит принимающий парсер, работающий аналогично StAX. Он позволяет вашему приложению принимать события от парсера в отличие от SAX-парсеров, которые автоматически передают события обработчику. Реализация принимающего парсера для анализа лент RSS показана в листинге 10.
Листинг 10. Реализация принимающего парсера
Принцип работы принимающего парсера похож на SAX. Он оперирует теми же событиями (начало элемента, конец элемента), однако их необходимо запрашивать явным образом при помощи метода (
). События имеют числовые идентификаторы (коды), поэтому для их выбора можно использовать оператор case-switch. Следует отметить, что вместо отслеживания закрывающих тегов, как в SAX, в случае принимающего парсера проще обрабатывать содержимое элемента при обнаружении открывающего тега. В листинге 10 приведен пример вызова метода
при обработке начала элемента для получения его текстового содержимого. Это существенно упрощает разбор документов по сравнению с SAX. Кроме того, обратите внимание на установку булева флага
, сигнализирующего об окончании обработки интересующего фрагмента документа. Это позволяет остановить процесс чтения документа XML если вы уверены, что в оставшейся его части нет ничего интересного для вашего приложения. Это весьма полезная возможность, особенно в тех случаях, когда требуется считать лишь малую часть документа. Подобные оптимизации играют весьма важную роль на мобильных устройствах, которые зачастую работают через медленные соединения. Таким образом, использование принимающего парсера может быть не только проще, но и выгоднее с точки зрения производительности. Наконец, он может использоваться для редактирования документов XML.
Создание документов XML
До этого момента мы рассматривали варианта разбора документов XML, полученных из Интернета. Однако существуют ситуации, в которых вашему приложению необходимо отправлять данные в формате XML удаленному серверу. Разумеется, вы можете просто создавать текстовое представление XML при помощи
или аналогичного класса. В качестве альтернативного решения можно воспользоваться принимающим парсером, как показано в листинге 11.
Листинг 11. Формирование документа XML при помощи принимающего парсера
находится в том же пакете, что и
, использовавшийся в предыдущем разделе. Однако вместо того, чтобы запрашивать события, он помещает их в поток или передает классу-писателю (в примере выше таковым является
). Парсер предоставляет простой API, содержащий методы начала и завершения документа, создания элементов, а также формирования текстового содержимого элементов и атрибутов. Этот подход обладает существенным преимуществом по сравнению со
: с его помощью легче гарантировать синтаксическую корректность документа XML.
Заключение
Вне зависимости от того, какое приложение вы создаете для Android, если ему требуется принимать или отправлять данные через Интернет, оно скорее всего должно будет уметь работать с XML. Как было продемонстрировано в этой статье, Android поддерживает множество технологий для обработки документов XML, поэтому вы можете делать свой выбор как на основе личных предпочтений, так и основываясь на конкретной ситуации. В большинстве случаев можно смело выбирать SAX и использовать этот API либо традиционным образом, либо через тонкий вспомогательный класс. Если вы работаете с небольшими документами XML, то, возможно, проще использовать DOM. В противном случае, а также если требуется обработать лишь часть документа, использование принимающего парсера XML может быть выгоднее из соображений производительности. Кроме того, принимающий парсер предоставляет удобные возможности для создания и редактирования документов. Таким образом, каковы бы ни были потребности вашего приложения в отношении работы с XML, вы всегда сможете найти нужную технологию в SDK Android.
Загрузка
Ресурсы
- Оригинал статьи: «Working with XML on Android» (Michael Galpin, developerWorks, июнь 2009 г.). (EN)
- Прочитайте руководство «Создания приложений для Android при помощи Eclipse» (Фрэнк Эблсон, Frank Ableson,developerWorks, февраль 2008 г.), в котором подробно рассказывается о наиболее простом способе разработки для Android — среде Eclipse. (EN)
- Ознакомьтесь со статьей «Использование интегрированных пакетов: Codehaus’ Woodstox» (Майкл Галпин, developerWorks, июль 2007 г.), в которой приводится сравнение SAX, DOM и принимающих парсеров. (EN)
- Обратитесь к статье «Разбор XML при помощи StAX, часть 2: принимающие парсеры и события» (Петер Нерер, Peter Nehrer, developerWorks, декабрь 2006 г.), детально рассматривающей принципы работы принимающих парсеров. (EN)
- Станьте экспертом по вопросам SAX, прочитав руководство «Принципы работы SAX» (Николас Чейз, Nicholas Chase, developerWorks, июль 2003 г.). (EN)
- Узнайте больше о разборе XML при помощи DOM из руководства «Принципы работы DOM» (Николас Чейз, developerWorks, март 2007 г.). (EN)
- Обратитесь к документации по SDK Android за информацией об использовании этого пакета для разработки и отладки приложений, а также проектирования пользовательского интерфейса. (EN)
- Прочитайте о спонсорах Android – альянсе Open Handset, состоящем из 47 технологических компаний, работающих над решениями в области мобильных устройств. (EN)
- Сертификация по XML корпорации IBM: узнайте, как стать сертифицированным разработчиком IBM в области XML и связанных с ним технологий. (EN)
- Технические мероприятия и Web-трансляции developerWorks: в этих разделах можно получить самую актуальную информацию о современных технологиях. (EN)
- Слушайте интервью и обсуждения вопросов, интересующих разработчиков программного обеспечения, в трансляциях developerWorks. (EN)
Получить продукты и технологии
- SDK Android: загрузите пакет разработчика, ознакомьтесь с документацией по API и прочитайте самые свежие новости об Android на официальном сайте разработчиков для этой платформы. (EN)
- Загрузите исходный код проекта Android. (EN)
- Загрузите и попробуйте в деле последнюю версию среды разработки Eclipse. (EN)
- Загрузите ознакомительные версии продуктов IBM и опробуйте инструменты разработки приложений, а также связующее программного обеспечение IBM семейств DB2®, Lotus®, Rational®, Tivoli® и WebSphere®. (EN)
Об авторе
Майкл Галпин (Michael Galpin) имеет учёную степень по математике в Калифорнийском Технологическом институте. Он является Java-разработчиком с конца 90-х гг. и работает инженером по программному обеспечению в Vitria Technology, в Саннивейл, Калифорния.
Источник