679

Реализация геолокационного приложения для ОС Android

Курсовая

Информатика, кибернетика и программирование

Создание геолокационного приложения для ОС Android и получения навыков программирования для этой системы. Основные компоненты Android приложения. Плагин DDMS для среды разработки Eclipse. Программа, определяющая местоположение пользователя и находящая объекты в заданном радиусе.

Русский

2013-01-06

109 KB

471 чел.

Министерство образования и науки РФ

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ БЮДЖЕТНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ "ОМСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ"

Кафедра «Автоматизированные системы обработки информации и управления»

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
К КУРСОВОМУ ПРОЕКТУ

по дисциплине
«
ООП на языке Java»

Реализация геолокационного приложения для ОС Android

Руководитель:

старший преподаватель каф. АСОИУ  Е. Б. Юдин

 подпись, дата

Исполнитель:

студент гр. ИВТ-240 ______________________________________ А. Н. Гулицкий

 подпись, дата

Омск 2011


Реферат

Отчет 11 с., 3 рис., 0 табл., 3 источника, 0 прил.

ANDROID, GPS, ГЕОЛОКАЦИЯ, ОПРЕДЕЛЕНИЕ МЕСТОПОЛОЖЕНИЯ, JAVA, ANDROID SDK

Предметом исследования является создание геолокационного приложения.

Цель работы – реализация приложения на языке Java с использованием технологии GPS для ОС Android.

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


Содержание

Введение 5

1 Постановка задачи курсового проектирования 6

2 Теоретический анализ 6

2.1 История Android 6

2.2 Основные компоненты Android приложения 6

3 Описание разработанной системы 7

3.1 Аспекты реализации 7

3.2 Диаграмма классов 7

3.3 Назначение и область применения 8

4 Описание программы 8

4.1 Описание программы 8

4.2 Внешний вид программы 8

4.3 Тестирование приложения 9

4.4 Достоинства разработанной программы 9

4.5 Недостатки разработанной программы 9

Заключение 10

Список использованных источников 11

 


Введение

Данный курсовой проект направлен на создание геолокационного приложения для ОС Android и получения навыков программирования для этой системы.

Данная тема особенно актуальна в настоящее время, в связи с широким распространением ОС Android и востребованностью приложений, связанных с геолокацией и технологией GPS.


Постановка задачи курсового проектирования

Целью данного курсового проекта является разработка приложения для ОС Android, используемого для определения местоположения пользователя с помощью технологии GPS и вывод информации об объектах, находящихся в некотором радиусе.

  1.  Теоретический анализ
    1.  История Android

ОС Android предназначена для мобильных устройств и основана на ядре Linux.

В 2005 году Google купила небольшую компанию Android Inc., а в 2007 году был создан Open Handset Alliance – группа компаний, целью которой является разработка открытых стандартов ПО для мобильных устройств. В OHA входят многие известные и крупные производители мобильных устройств и провайдеры сотовой связи.

Чуть позже был выпущен SDK для разработчиков, основным языком для которого является Java [1].

Первым выпущенным телефоном на базе Android считается T-Mobile G1 (он же HTC Dream).

Сейчас данная платформа активно развивается, и приложения пользуются спросом на рынке.

  1.  Основные компоненты Android приложения

Приложения для Android создаются на языке Java и запускаются в виртуальной машине Dalvik [3]. Основным форматом байткода для этой ВМ является формат dex. Dex-файлы, ресурсы и xml-файлы в бинарном виде запаковываются в архив apk, из которого и устанавливается приложения. Также apk-архив подписывается ключами для распространения приложения в Android Market.

Приложения состоят из четырех основных компонентов:

  •  Activity (Активность) – это визуальный компонент приложения, отвечающий за пользовательский интерфейс. Можно провести аналогию с окном в ОС Windows [2];
  •  Service (Сервис) – компонент, выполняющийся в фоновом режиме;
  •  Broadcast Receiver (Широковещательный приемник) – компонент, задача которого отслеживать сообщения от приложений и системы и реагировать на них;
  •  Intent (Намерение) – компонент для связывания нескольких или частей одного приложения;
  •  Файл AndroidManifest.xml – файл, определяющий структуру приложения и содержащий данные обо всех его компонентах;
  1.  Описание разработанной системы
    1.  Аспекты реализации

Для реализации данной программы было создано 4 класса, из них три Активности и один Сервис:

  •  Класс MainActivity – класс главной Активности. Содержит в себе меню настроек и кнопку включения/выключения отслеживания местоположения;
  •  Класс PreferencesActivity – класс Активности, содержащий в себе интерфейс для настройки параметров приложения;
  •  Класс SecondActivity – основной класс Активности, используемый для вывода информации о найденных объектах;
  •  Класс GpsService – класс Сервиса, который отслеживает местоположение пользователя и переключает способы его определения в зависимости от условий;

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

  1.  Диаграмма классов

Диаграмма классов изображена на рисунке 1.

Рисунок 1 – Диаграмма классов

  1.  Назначение и область применения

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

  1.  Описание программы
    1.  Описание программы

Программа определяет местоположение пользователя по GPS, либо по вышкам сотовой связи (если GPS выключен). В качестве компенсации за потерю точности при определении координат по сотовым вышкам радиус определения увеличивается.  Для включения/выключения отслеживания местоположения используется переключатель в главной Активности приложения. Для вызова меню настроек используется аппаратная кнопка «Меню».

Если рядом найден некоторый объект, то телефон сигнализирует вибрацией, звуком и миганием светодиодом. Также в области уведомлений появляется краткая информация о найденном объекте.

После тапа по уведомлению выводится Активность с полной информацией об объекте. Там же возможно позвонить по номеру и показать объект на карте.

  1.  Внешний вид программы

Внешний вид программы изображен на рисунках 2 и 3.

Рисунок 2 – Внешний вид главной Активности

Рисунок 3 – Внешний вид Активности с информацией

  1.  Тестирование приложения

Для тестирования приложения использовался плагин DDMS [1] для среды разработки Eclipse. С его помощью в эмулятор передавался набор геокоординат. Затем полученное расстояние от салона до точки измерения сравнивалось с измеренным на Яндекс.Картах. Погрешность расчетов оказалась достаточно мала и колебалась в пределах полуметра.

  1.  Достоинства разработанной программы

К достоинствам программы относятся:

  •  Мобильность;
  •  Малый расход батареи;
  •  Возможность работы с разными типами объектов;
  •  Возможность работы как с GPS, так и с вышками сотовой связи.
    1.  Недостатки разработанной программы

К недоработкам программы можно отнести:

  •  Ориентированность только на платформу Android;
  •  Достаточно большой расход памяти;
  •  Обязательный доступ в интернет для работы приложения.


Заключение

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

Созданное приложение может использоваться в сфере маркетинга и торговли, а также для туристических целей.

Поставленная задача решена полностью.


Список использованных источников

  1.  Android Developers [Электронный ресурс]. – Режим доступа:                      http://developer.android.com, свободный. – Загл. с экрана. – Яз. Английский
  2.  Рето Майер Android 2: Программирование приложений для планшетных компьютеров и смартфонов. – М: Эксмо, 2011. – 672 с.
  3.  Голощапов А. Л. Google Android. Программирование для мобильных устройств. – СПб: БХВ-Петербург, 2011. – 448 c.