Дипломная работа: Андроид приложение проверки состава продукта

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Федеральное государственное автономное образовательное учреждение высшего образования

"Высшая Школа Экономики"

Факультет компьютерных наук

Департамент программной инженерии

Выпускная квалификационная работа

Андроид приложение проверки состава продукта

Куленко Н.А.

Москва 2018

Реферат

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

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

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

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

Ключевые слова: здоровая еда, безопасная еда, андроид-приложения, штрих-код

Abstract

Today people spend a lot of time on choosing food in the supermarket. A lot of them read the composition and try to find safe food for themselves.

There are several solutions to help people choose food, but xisting applications focus on making offer using programmatically laid down selection criteria and the users cannot make it individual for themselves.

To solve this problem, we develop an application that can help people to choose the products according to an individual list of unacceptable ingredients.

This paper describes the technologies, algorithms, and architectural solutions used in the development of the application.

The paper contains 43 pages, 3 chapters, 29 illustrations, 6 tables, 20 bibliography items.

Keywords - healthy food; barcode scanner; safe food; android application.

Оглавление

Введение

Глава 1. Обзор аналогов

1.1 Приложения для определения безопасности продуктов

1.2 Штрих-код как идентификация продукта

1.3 Доля рынка системы Android

1.4 Компоненты Android-приложения

1.5 Подходы к распознаванию штрих-кодов с использованием средств Android

Глава 2. Проектирование приложения

2.1 Архитектура приложения

2.2 Работа с HTTP запросами

2.3 Проектирование взаимодействия с пользователем

Глава 3. Разработка мобильного приложения

3.1 Используемые средства и технологии

3.3 Реализация сканирования штрих-кода

3.4 Сетевое взаимодействие

3.5 Отображение результата поиска

3.6 Разработка интерфейса приложения

Заключение

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

Определения, обозначения и сокращения

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

E - Все добавки имеют свой уникальный номер, который начинается с буквы "E". Кодекс Алиментариус содержит систему нумерацию для международной классификации.

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

Retrofit - Библиотека для Android и Java, которая является инструментом для работы с API в клиент-серверных приложениях.

JSON - текстовый формат обмена данными, основанный на принципе ключ-значение.

GSON -библиотека, разработанная компанией Google, которая позволяет конвертировать JSON-объекты в Java-объекты и наоборот.

Mobile Vision API - программный API для распознавания штрих-кода.

MySQL - открытая реляционная система управления базами данных.

Введение

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

Состав одних и тех же продуктов может очень сильно отличаться. В то же время люди стремятся следить за своим здоровьем и особое внимание уделяют составу продукта. Учитывая данную тенденцию, производители активно стараются привлечь внимание именно к своим товарам различными этикетками, анонсирующими безопасность предлагаемых продуктов. Можно выделить следующие популярные категории:

1. Продукты для диабетиков,

2. Продукты без консервантов,

3. Продукты без красителей и ароматизаторов,

4. Продукты без ГМО,

5. Полностью натуральный состав продуктов.

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

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

Так как решение ориентировано на использование в продуктовом магазине, разумно его разработать в качестве мобильного приложения. Для реализации выбрана платформа Android как самая распространенная.

Для достижения цели необходимо решить следующие задачи:

1. Анализ существующих решений.

2. Выбор способа идентификации товаров.

3. Формулировка требований к приложению и составу выполняемых функций.

4. Выбор архитектурного решения, методов и подходов к реализации.

5. Проектирование интерфейса и взаимодействия пользователя с приложением.

6. Реализация выбранных методов и подходов.

7. Тестирование.

8. Разработка технической документации.

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

Глава 1. Обзор аналогов

В этой главе приводится исследование рынка приложений для поиска здоровых продуктов на базе Android, а также описание архитектуры, структуры и компонентов Android приложений.

1.1 Приложения для определения безопасности продуктов

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

Первая группа формирует рейтинг продуктов питания на основе отзывов пользователей. Одним из самых популярных таких решений является приложение Rate&Goads (ООО "Рейтенгудс", https://clck.ru/DTiqD).

Вторая группа формирует рейтинг на основе исследований безопасности входящих в продукты ингредиентов. Наиболее популярные решения - Проверь ингредиенты (Игорь Никифоров, https://clck.ru/DTiww), Росконтроль (Росконтроль, https://clck.ru/DTirm), FoodCheck (Артем Лукянов, https://clck.ru/DTiu6). Особое внимание уделено именно пищевым добавкам. В странах Евросоюза с 1953 года разработана система нумерации для классификации пищевых добавок [1]. У каждой добавки свой уникальный номер, начинающийся с буквы "E" (табл.1).

Таблица 1

Категории пищевых добавок

Категория

Название

Красители

E100 - E199

Консерванты

E200 - E299

Антиокислители

E300 - E399

Стабилизаторы, загустители, эмульгаторы

E400 - E499

Регуляторы рН и вещества против слёживания

E500 - E599

Усилители вкуса и аромата, ароматизаторы

E600 - E699

Антибиотики

E700 - E799

Резерв

E800 - E899

Прочие

E900 - E999

Дополнительные вещества

E1100 - E1999

Rate&Goads

Приложение Rate&Goads предоставляет пользователям возможность распознать товар посредством камеры мобильного телефона, используя штрих-код или QR-Code. Также есть возможность осуществить поиск по названию товара (рис.1).

Рисунок 1. Rate&Goads Главное меню

База данных содержит информацию о товарах в различных категориях, начиная с электроники, заканчивая продуктами питания. После идентификации открываются данные товара. Из обязательной информации присутствует название производителя товара. Кроме названия, подавляющее большинство товаров содержат также фотографии внешнего вида, отзывы покупателей и рейтинг (рис.2).

Рисунок 2. Rate&Goads Описание товара

Добавлять отзывы, изменять рейтинг и присваивать товару фотографии могут только зарегистрированные пользователи.

Проверь ингредиенты

Через камеру смартфона мобильное приложение распознает продукт по штрих-коду посредством ручного ввода или камерой устройства (рис. 3).

Рисунок 3. Интерфейс приложения "Проверь ингредиенты"

В результате сканирования приложение выдает анализ безопасности содержащихся в нем Е-добавок. Содержит краткое описание добавок, оценку безопасности и влияние на организм (рис. 4).

Рисунок 4. Влияние добавок "Проверь ингредиенты"

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

FoodCheck

Данное приложение предоставляет возможность отсканировать штрих-код при помощи камеры устройства или ввести его вручную. А также осуществить поиск по составу продукта (рис. 5).

Рисунок 5. Интерфейс приложения FoodCheck

Интерфейс приложения интуитивно понятен, не нагружен лишним функционалом и в результате распознавания штрих-кода пользователь получает данные с наименованием продукта и входящими в него пищевыми добавками. О каждой найденной добавке можно посмотреть более подробную информацию (рис. 6).

Рисунок 6. Результат распознавания продукта

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

Росконтроль

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

Рисунок 7. Интерфейс приложения "Росконтроль"

Продукты рассортированы по категориям и рядом с каждым указан индекс безопасности, который формируется на основе 4 факторов: безопасность, натуральность, полезность, дегустация (рис. 8).

Рисунок 8. Информация о продукте "Росконтроль"

Также описан состав продукта, насколько он натурален, какие добавки в нем были обнаружены и нарушения, которые были обнаружены.

Каждое приложение имеют свою специфику, но можно выделить основные общие функции. Ниже представлена табл.2 с кратким обзором основных возможностей рассмотренных приложений.

Таблица 2

Краткий обзор существующих приложений

R&G

Проверь ингредиенты

FoodCheck

Росконтроль

Проверь состав

Сканирование штрих-кода

+

+

+

-

+

Содержание Е-добавок

-

+

+

+

+

Возможность проверки индивидуального списка непереносимых ингредиентов

-

-

-

-

+

В результате можно определить состав выполняемых функций для разрабатываемого приложения:

1. Регистрация и авторизация пользователя.

2. Ведение индивидуального списка запрещенных ингредиентов.

3. Идентификация товара с помощью камеры мобильного устройства.

4. Поиск данного продукта в базе данных.

5. Проверка состава продукта на наличие стоп-ингредиентов для пользователя

Источник: https://otherreferats.allbest.ru/download/1008900/