Реферат
Оглавление 3
Введение 5
1. Постановка задачи 7
1.1. Выбор целевой платформы 7
1.2. Разбор имеющихся датчиков 7
1.3. Обзор существующих решений 11
1.3.1 Коммерческое приложение “Pulse” 12
1.3.2 Коммерческое приложение “Heart Rate” 12
1.3.3 Коммерческое приложение “Instant Heart Rate” 13
1.3.4 Коммерческое приложение “Heart Rate Monitor” 13
1.3.5 Коммерческое приложение “Samsung Health” 13
1.3.6 Выводы 14
1.4. Вывод функциональных требований 16
1.5. Выбор инструментов для разработки 18
2 Проектирование системы 20
2.1 Варианты использования 20
2.2 Сценарии ключевых вариантов использования 21
2.3 Проектирование схемы базы данных 23
2.4 Выбор средств Android 24
2.5 Архитектура приложения 28
2.5.1 Паттерн и его адаптация 28
2.5.2 Работа с базой данных 32
2.5.3 Связывание данных 34
2.5.4 Модель предметной области 35
3 Реализация 38
3.1 Фоновая работа 38
3.2 Сбор показаний пульса 40
3.3 Анализ данных и выдача замечаний 41
3.4 Сбор показаний шагомера 43
3.5 Графическое отображение статистики 46
Заключение 48
Список источников информации 49
Приложения 51
В настоящее время в мире сильное распространение получили смартфоны - многофункциональные сотовые телефоны с наличием операционной системы. Как известно, смартфоны совершенствуются из года в год, и разработчики программного обеспечения находят все новые и новые способы раскрывать потенциал их технических возможностей. Чаще всего это выражается в разработке полезных веб-сервисов, однако производители смартфонов побуждают разработчиков не забывать и о периферии своих продуктов, улучшая ее качество, разнообразность и функциональность. Чаще всего здесь обращают внимание на камеру смартфона, но не сложно заметить, как производители сей продукции снабжают ее новыми и новыми датчиками. Производители смартфонов сами предустанавливают на них программное обеспечение, раскрывающее потенциал имеющихся датчиков, однако его не всегда можно назвать доведенным до ума. Так, в 2014 году произошел дебют датчиков сердечного ритма для смартфонов [6], его назначение описывалось, как возможность проверить, как работает ваше сердце до, во время и после тренировки, но программное обеспечение от производителя и иные от сторонних разработчиков дают лишь голую цифру пользователю, возможность посмотреть историю замеров и в редком случае дают лишь какую то справочную информацию, помогающую анализировать пользователю свои показатели. Не каждый сможет извлечь полезную информацию лишь из графиков и цифр, и не каждый будет намеренно копаться в приложении в поисках справочной информации. Если речь идет о здоровье, стоит выжать максимум из того, что мы можем сделать с помощью этого датчика. Стоит в автоматическом режиме считать за пользователя его уровни нормы в разных физических состояниях с учетом его возраста и степени ожирения, и более того - сразу уведомлять его о ситуациях, когда показатели в эти уровни нормы не укладываются. Разумеется, нельзя по пульсу делать какие-либо медицинские рекомендации, однако простые замечания могут подтолкнуть пользователя задуматься и снизить темпы тренировок или же организовать поход к врачу, если пульс завышен/занижен без нагрузок на организм, что в итоге может помочь ему сохранить свое здоровье. Человек же знающий о своих хронических болезнях, связанных с сердцем, может игнорировать уведомления от приложения. Идея разработки приложения, решающего описанную проблему, и была взята в качестве темы данной работы.
Не хотелось бы зацикливаться на одном единственном датчике, но именно описанный выше можно назвать самым инновационным для смартфонов, поэтому он находится в центре данной работы. Безусловно, были рассмотрены и другие датчики, их проблемы и возможные пути их модификации как с программной части, так и с аппаратной.
В рамках данной работы было разработано приложение, сперва собирающее данные о пульсе пользователя, а затем помогающее ему их анализировать. В качестве дополнительной экспериментальной задачи было реализовано решение проблемы накрутки лишних шагов у шагомеров. Попутно автором были освоены язык программирования Java и операционная система Android.
Разработка программного продукта велась после тщательного проектирования, изучения сторонних библиотек, используемых в Android разработке, изучения стека сенсоров, имеющегося у современных смартфонов, а так же после изучения информации о пульсе, его нормах и методах их расчетов.
Могу констатировать успешное достижение целей, поставленных в рамках работы, функционал реализован в полном объеме, а эксперимент с шагомером показал применимость способа отсеивания шагов при использовании порога скорости и ее расчета с помощью GPS геолокации, но со средней эффективностью.