Разработка приложения «Расписание МГУП» для мобильных платформ

Разработка приложения «Расписание МГУП» для мобильных платформ

Д.И. Жвакин,

студент кафедры информационных систем МГУП имени Ивана Федорова1

В 2004 году Г.Б. Рубальским была создана информационно-поисковая система КГБ(Кто Где Будет), которая является дополнением к автоматизированной системе составления расписаний РАСПАСС. Базовая версия данной системы не предоставляет интерфейса для мобильных устройств. В связи с данным фактом было принято решение о разработке приложения для Android и iOS.

Процесс разработки приложения для мобильных платформ включает в себя следующие этапы:

1. Создание серверной платформы.

2. Написание мобильного приложения.

Создание серверной платформы для мобильного приложения

Общую структуру работы приложения можно представить следующим образом (рис. 1):

1 Научный руководитель А.А. Марков, д.т.н., профессор.

Мобильное приложение

Рис. 1. Обобщенная схема работы приложения

Обработка запроса к серверу Node.JS происходит в несколько этапов:

1) просмотр cache на наличие актуального расписания для заданной группы. В том случае, если оно имеется на сервере memcached, пользователю выдается сообщение, содержащие список занятий, разбитых по дням в формате JSON;

2) если по каким-то причинам на сервере memcached не оказалось расписания для заданной группы, происходит выполнение POST-запроса на сервер расписания. В случае успешного запроса происходит обработка полученных данных, в противном случае выдается сообщение с кодом и описанием ошибки;

• распространненость и простота в использовании;

• возможность использования CSS-селекторов для извлечения данных;

4) в случае успешного извлечения данных из запроса происходит запись в memcached и вывод полученных данных. В противном случае происходит вывод сообщения об ошибке.

Разработка мобильного приложения для платформы Android 4.0.3

К разрабатываемому приложения предъявляются следующие требования:

1) интуитивность интерфейса;

3) локальное сохранение данных.

В связи с предложенными требованиями было принято решение использовать следующие инструменты разработки:

• Среда разработки Eclipse IDE.

• Фреймворки PhoneGap, jQuery, jQuery Mobile.

• Android SDK.

Общая схема работы приложения выглядит следующим образом (рис. 2):

Рис. 2. Схема выполнения приложения в среде РИопейар

Структура навигации в приложении выглядит следующим образом (рис. 3):

Обновление расписания

Главная

Рис. 3. Схема навигации мобильного приложения

При входе в приложение пользователю показывается окно приветствия (рис. 4):

# Ф_^ ..I*  23:08

Выход Расписание

Главная

Жми кнопку для обновления!

С Обновить

Рис. 4. Главное окно приложения

Главное меню приложения включает в себя элементы: «Главная», «Расписание», «Настройки». При нажатии на каждую из них происходит переход на соответствующую вкладку программы. При нажатии кнопки «Обновить» происходит обновление расписания путем Ajax-зап-роса на сервер. Обмен данных с сервером происходит в формате JSON.

Вкладка «Расписание» содержит элемент «List View» [3] с элементами, каждый из которых представляет собой вкладку с расписанием на конкретный день недели.

При нажатии на вкладку происходит показ ее содержимого, которое представляет собой набор вкладок, разбитых по учебным парам (см. рис. 5).

При нажатии на кнопку «Настройки» происходит переход на одноименную вкладку. На текущей вкладке находятся основные элементы настройки приложения, а именно учебная группа и включение/ отключение автообновления расписания.

Сохранение настроек приложения происходит в localStorage [4]. При сохранении используется метод storage.set(); при получении значения из хранилища используется метод storage.get().

Сохранение расписания происходит на встроенной памяти устройства. Выбор встроенного хранилища обусловлен тем фактом, что работа с JSON-объектами с помощью localStorage представляет некую сложность, а именно хранение объектов в текущей версии хранилища невозможно.

ф  В f ,.i m 23:09

Выход Расписание

Расписание

+ Понедельник [+/ Вторник ™ Среда ф Четверг + Пятница Суббота

Рис. 5. Вкладка с расписанием

Библиографический список

1. Официальный сайт Node.js. URL: http://nodejs.org

2. Статья : «jQuery + node.js: потрошим страницы на сервере». URL: http://nodejs.ru/404

3. Apache Cordova API Documentation. URL: http://docs. phonegap.com

4. Mozilla Developer Network. URL: https://developer.

mozilla.org