РАЗРАБОТКА ПРИЛОЖЕНИЯ ОТПРАВКИ СООБЩЕНИЙ В СФЕРЕ ГЕОПОЗИЦИОНОРИРОВАНИЯ ДЛЯ ОС АНДРОИД. - Студенческий научный форум

VI Международная студенческая научная конференция Студенческий научный форум - 2014

РАЗРАБОТКА ПРИЛОЖЕНИЯ ОТПРАВКИ СООБЩЕНИЙ В СФЕРЕ ГЕОПОЗИЦИОНОРИРОВАНИЯ ДЛЯ ОС АНДРОИД.

Рябова К.В. 1, Шаповалова М.С. 1
1Российский государственный гуманитарный университет
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF

Согласно проведенным исследованиям, существует небольшое количество программ геопозиционирования (ведущие из них – Google maps, foursquare и Яндекс карты), но в этих программных продуктах отсутствуют возможности отправки сообщений и установки метки на карту, которая была бы видна всем пользователям. Хотя, на наш взгляд, вышеупомянутые возможности представляются нужным дополнением, которое во много раз повысит полезность приложения, так как программы геопозиционирования предоставляют информацию только об общественных заведениях, однако довольно часто пользователю может требоваться информация не только о заведениях, а о конкретной области на открытом месте. - Это может быть место повышенной опасности в лесу (например, берлога медведя); в горах, – примеров может быть масса. К тому же в ведущих программах геопозиционирования отсутствует возможность отметить определенную область на карте.

Также кратко хотелось бы сказать о потенциале и о необычности операционной системы Android. Основная идея Google состоит в том, что компания предлагает в открытый доступ исходные коды своей операционной системы, предлагает набор удобных инструментов для разработки и хорошо документированное SDK, что должно со временем привести к появлению большого количества программного обеспечения для этой платформы.

Разрабатываемое нами приложение расстановки меток и отправки сообщений по своей сути будет являться распределенным, то есть база меток должна пополняться разными пользователями и содержимое этих меток доступно всем. Поэтому в приложении с распределенной архитектурой без постмодерации не обойтись и потребуется ее организовать.

Программа установки меток и отправки сообщений в основном ориентировано на использование на открытой местности, вне городской черты, однако можно добавить возможность установки особого вида меток - меток для зданий. В данных метках будет содержаться история известных зданий, тем самым есть вероятность привлечь внимание не только аудиторию автомобилистов и туристов, но и просто людей, который приехали в новый для них город и желают узнать об истории значимых зданий города. Данное нововведение повысит также и культурную ценность приложения.

Также не надо забывать, что устройства на Андроид очень различны. Они могут быть выполнены на базе очень слабых процессоров, так и на мощных восьмиядерных. Следовательно, приложение нужно оптимизировать так, чтобы оно работало одинаково быстро на всех устройствах. Потенциальным элементом, где может происходить не плавная работа интерфейса – это рассмотрение пользователем той области карты, где много меток. Поэтому для повышения эффективности процесса, следует метки, которые расположены относительно близко друг от друга объединить в одну, а при дальнейшей детализации карты, сделать так, чтобы они расходились в первоначальные свои места.

    Так как разрабатываемое приложение является распределенным, то логично было бы предположить, что для его реализации потребуется заниматься хостингом для размещения программы на сервере, но компания Google во многом облегчает разработку приложений на своей платформе, предоставляя такую службу как App Engine.

    С помощью данной службы разработчикам предоставляется возможность выполнять веб-приложения в инфраструктуре Google. Пользуясь данной технологией упраздняется вопрос о хостинге, дать доступ к приложению многим пользователям, с помощью App Engine очень просто: требуется просто загрузить приложение, после чего доступ к нему будет открыт.

    App Engine предоставляет мощную службу распределенного хранения данных с поддержкой механизма запросов и транзакций. Расширение распределенного хранилища данных вместе с ростом количества данных можно сравнить с ростом распределенного веб-сервера по мере роста трафика.

    Хранилище данных App Engine отличается от обычных реляционных баз данных. Объекты данных обладают видом и набором свойств. Запросы могут извлекать объекты определенного вида, отфильтрованные и отсортированные по значениям свойств. Значения свойств могут принадлежать к любому из поддерживаемых типов значений свойств.

    Объекты хранилища данных не требуют использования схемы. Структура объектов данных предоставляется и соблюдается в коде приложения. Интерфейсы Java JDO/JPA и интерфейс хранилища данных Python включают функции для применения и соблюдения структуры в рамках приложения. Приложение может получать прямой доступ к хранилищу данных, чтобы использовать необходимую часть структуры.

    App Engine поддерживает интеграцию приложения с аккаунтами Google для выполнения аутентификации пользователей. Приложение позволяет пользователю выполнить вход, используя свой аккаунт Google, и получить доступ к адресу электронной почты и отображаемому имени, связанному с аккаунтом. С помощью аккаунтов Google пользователь может быстрее начать пользоваться приложением, так как ему не придется создавать новый аккаунт.

Все наборы средств для разработки App Engine (SDK) для Java и Python включают приложение веб-сервера, которое имитирует работу всех служб App Engine на вашем локальном компьютере. Каждый SDK включает в себя все API и библиотеки, доступные в App Engine. Веб-сервер также имитирует безопасную среду тестирования, включая выполнение проверок попыток доступа к ресурсам системы, запрещенным в среде выполнения App Engine.

    Apache Maven потребуется для сборки Google AppEngine. Apache Maven — фреймворк для автоматизации сборки проектов, специфицированных на XML-языке POM (англ. Project Object Model). Активно используется в больших проектах и помогает осуществить процессы компиляции, создания jar, создания дистрибутива программы, генерации документации.[9]

Фреймворк Maven – это незаменимая вещь при создании проектов с большим количеством подключаемых библиотек, так как подключаемые библиотеки могут ссылаться на другие библиотеки, которых нет в нашем проекте. Maven решает данную проблему, автоматически загружая библиотеки, на которые ссылаются другие подключаемые модули.

    Учитывая предполагаемую аудиторию приложения, далёкую от информационных технологий, мы постарались сделать интерфейс максимально простым. При запуске приложения, у пользователя есть возможность выбрать свой логин. Затем, на дисплее появляется мировая карта Google maps. Когда надо добавить метку, то требуется нажать на Add marker и добавить метку

    Рис. 1 Добавление метки.

    При повторном нажатии на метку пользователь может ввести заголовок. Когда требуется перевести метку в другое место, нужно нажать на кнопку Edit mode и перенести метку в любое другое место.

    Конечно, есть и минусы в данной технологии: App Engine позволяет разработчику контролировать лишь часть параметров операционной системы, что может представлять проблему для разработки приложений. Нет доступа на запись в файловую систему сервера. Единственный способ сохранять данные — внутреннее хранилище, нереляционная, высокомасштабируемая база данных. Однако вышеперечисленные ограничения небольшие по сравнению с возможностями.

Список использованной литературы

1 Майер Р. Android 4. Программирование приложений для планшетных компьютеров и смартфонов / Р. Майер. – М. : ЭКСМО, 2013.

2. Медникс З. Программирование под Android / З. Медникс., Л. Дорнин. – Спб.: Питер, 2013.

3. Климов А.А. Освой программирование играючи. Сайт Александра Климова. - http://developer.alexanderklimov.ru/android/. Дата обращения: 04.11.2013

4. Голощапов А.Л. Google Android: программирование для мобильных устройств. – СПб.: БХВ-Петербург, 2011.

Просмотров работы: 1268