Мобильное приложение как способ решения проблем микропредприятий и малых предприятий
Автор: Ивлиева И.А., Глебов С.И.
Журнал: Форум молодых ученых @forum-nauka
Статья в выпуске: 9 (37), 2019 года.
Бесплатный доступ
В данной статье рассматривается решение проблем микропредприятий и малых предприятий по продаже и доставке товаров при помощи создания приложения. Производится анализ существующих аналогов. Обосновывается необходимость создания приложения.
Мобильное приложение, программирование, построение маршрута, налаживание коммуникации
Короткий адрес: https://sciup.org/140287043
IDR: 140287043
Текст научной статьи Мобильное приложение как способ решения проблем микропредприятий и малых предприятий
Данная статья направленна на решение проблем микропредприятий и малых предприятий по продаже и доставке товаров - построение наиболее быстрого и точного маршрута и налаживание коммуникации между всеми участниками сделки.
Зачастую успешность торгового бизнеса зависит от своевременной и быстрой доставки товаров потребителям. Для правильного составления маршрута нужно учитывать множество факторов. Например, ситуацию на дорогах, высоту и вес транспортного средства и так далее.
Ещё одним важнейшим аспектом торговли является взаимодействие между участниками сделки. Общение помогает всем сторонам получить желаемый результат наиболее эффективным способом.
Ежедневно микропредприятия и малые предприятия сталкиваются с задачами по доставке товаров и взаимодействие с покупателями. Продавец не всегда может построить эффективный маршрут, что приводит к потере времени и вследствие этого клиентов.
АНАЛИЗ СУЩЕСТВУЮШИХ ПРИЛОЖЕНИЙ
Для сравнения были выбраны пять наиболее популярных приложений по продаже и покупке товаров в Play Маркет.
Название Оценка Количество скачиваний |
Pandao 4.8 >10 млн |
Joom 4.7 >100 млн |
Юла 4.7 >50 млн |
Авито 4.2 >50 млн |
КупиПродай 4.6 >100 тыс |
Построение маршрута для доставки товара |
- |
- |
- |
- |
- |
Связь с продавцом |
- |
- |
+ |
+ |
+ |
Ни одно из приведенных в таблице приложений не имеет функцию построения маршрута.
Юла, Авито и КупиПродай имеют возможность общаться с продавцом напрямую, а в Joom и Pandao для связи с продавцом нужно обратиться в техподдержку.
ПРОЕКТИРОВАНИЕ ПРИЛОЖЕНИЯ
Данное приложение было разработано под операционную систему Android с использованием языка программирования Java.
Android - быстро развивающаяся платформа, имеющая множество пользователей по всему миру. На конференции для разработчиков Google I/O 2019 компания объявила, что во всём мире более 2,5 миллиардов активных устройств работает на операционной системе Android.
РАЗРАБОТКА ГРАФИЧЕСКОГО ИНТЕРФЕЙСА
Графический интерфейс был построен при помощи xml. Это позволило отделить представление приложения от кода, который отвечает за его поведение. Вынося описание пользовательского интерфейса за приделы кода приложения, мы получаем возможность изменять интерфейс без редактирования исходного кода и его повторной сборки.
В каждом макете должен быть один корневой элемент, который наследуется от View или ViewGroup. Далее при добавлении объектов макета или виджетов, формируется иерархия представления. Ниже представлен XML макет (рис. 1), который пользователь увидит при первом включении приложения.

Рис. 1 Внешний вид и XML файл первой страницы приложения
В данном макете используется CoordinatorLayout, в котором размещаются две кнопки в LinearLayout.
Так же в приложении присутствуют множество других макетов. Например, регистрации пользователей и входа в профиль (рис. 2).

phoneNumber
password
LOGIN

android:layout_height="wrap_content"
android:theme="9style/AppTheme.AppBarOverlay">
android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:minHeight="?actionBarSize" android:text="@string/app_name" android: layout_width="inatch_parent" android:layout_height="wrap_content" android:background^'?attr/colorPrimary" /> android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior" /> Рис. 2 Внешний вид и фрагмент XML файла для входа и регистрации Здесь используется ViewPager для реализации вкладок для навигации между страницами с помощью TabLayout. Для отображения списка товаров (рис. 3) используется RecyclerView. Данный виджет является более продвинутым и гибким вариантом ListView. Для работы RecyclerView требуется LayoutManager и Adapter. Грейпфрут весовой 1 кг Price: 119,93 P 0% Quantity: 100 ID: 2 Quantity: 1452 Price: 361,95 Р Карандаши 5% цветные аква... Фарш бвраний 15% 400 гр Quantity: 258 Price: 229,99 P
xmlns: app="" xmlns:tools*"" android:layout_width="mat ch_parent" android:layout_height="natch_parent" app:layout_behavior=" Is string/appbar_scrolling_view_behavior’ tools:context=".SellerActivity" tools:showln="@layout/app_bar_seller"> android:layout_width="match_parent" android:layout_height="match_parent" /> android:layout_width=”wrap_content" android:layout_height="wrap_content" android:layout_margin="20dp" android:layout_margin£nd="8dp" android:layout_marginRight="8dp" android:layout_marginBottom="Bdp" android:tint="@android:color/white" app :layout_constraintBottoii_toBottomOf= "parent" app:layout_constraint£nd_toEndOf="@+id/recyclerView_product" app:srcCompat="@android:drawable/ic_input_add" /> При нажатии на элемент из списка будет отображаться страница с Грейпфрут весовой 1 кг Quantity: 119,93 ₽ В грейпфруте содержится множество витаминов, он снижает уровень плохого холестерина в организме, имеет антибактерицидный эффект, помогает сжигать жиры и улучшает обмен веществ Рис. 3 Внеш списка товаров описанием товара (рис. 4). Рис. 4 Внешний вид экрана с описанием товара Так же в профиле у продавца есть вкладка с картой (рис. 5), на которой строится оптимальный маршрут для доставки товаров. ОПИСАНИЕ РАЗРАБОТАННОГО ПРИЛОЖЕНИЯ
Программа содержит семь Activity и два Fragment. При первом входе в приложение пользователь выбирает кем он является (покупателем или продавцом). Для этого на кнопки были установлен метод setOnClickListener и создан экземпляр
View.OnClickListener
с методом onClick() в котором обрабатывается логика нажатия на кнопку
(рис. 6)
. При
Рис. 5 Внешний вид экрана с картой нажатии на customerButton или sellerButton происходит переход на компонент входа в систему. Button cuatomerButton = findViewById(R.id.customer_button); Button aellerButton = findViewById( R.id.seller_button); cuatomerButton.aetOnClickListener(new View.OnClickListener() { @Override public void on€lick(View view) { atartActivity(intent); } }); aellerButton.aetOnClickLiatener(new View.OnClickLiatener() { @Override public void onClick(View view) { atartActivity(intent); } }); Рис. 6 Фрагмент кода в котором обрабатывается логика нажатия на кнопку Далее происходит соответствующая регистрация и вход в приложение. После входа в свой профиль пользователь видит список товаров. В случае продавца это перечень его продукции. Также у него будет доступны функции добавления и редактирования товара. А покупатель увидит список продукции всех продавцов с возможностью покупки этих товаров. Для работы RecyclerView требуется создать три класса: Product, ProductAdapter, ProductViewHolder. Product содержит информацию о конкретном продукте. Сущность товара имеет: id, название, описание, цену, количество, скидку, владельца, изображение. ProductAdapter используется для того что бы сообщить RecyclerView какие данные следует отображать. Этот класс наследуется от абстрактного класса RecyclerView.Adapter, который определяет три метода:
•
onCreateViewHolder: возвращает объект ProductViewHolder, который будет хранить данные объекта Product;
•
onBindViewHolder: выполняет привязку объекта ProductViewHolder по определенной позиции;
•
getItemCount: возвращает количество объектов в списке.
ProductViewHolder внутренний класс ProductAdapter, который наследуется от RecyclerView.ViewHolder. Он хранит информацию необходимую для отрисовки ячеек списка. Далее нужно показать RecyclerView как должны располагаться элементы. Для этого вызывается метод setLayoutManager с использованием LinearLayoutManager mLayoutManager = new LinearLayoutManager( context: this) ; recyclerView.setLayoutManager(mLayoutManager); Рис. 7 Фрагмент кода с использованием LinearLayoutManager LinearLayoutManager (рис. 7). Для построения маршрута с несколькими путевыми точками, оптимизированными для ходьбы или вождения, используется HERE Android SDK. Информация о маршруте предоставляется линией, которая отображает соединительный путь между всеми точками. Для отображения вычисленного маршрута используется класс MapRoute. Сперва нужно объявить экземпляр RouteManager, который ответственен за вычисление маршрута из RoutePlan, с RouteManager.Listener для мониторинга хода выполнения расчета и запуска соответствующих методов. Чат между покупателем и продавцом позволит минимизировать ошибки во время отгрузки и доставки товаров, а также наладить связь между всеми участниками сделки. ЗАКЛЮЧЕНИЕ В ходе выполнения данной работы был создан прототип приложения для решения проблем малого бизнеса. Был поведен анализ существующих программ, после чего было принято решение о создании приложения, которое не будет иметь недостатки рассмотренных программ. Разработка данного прототипа позволила решить ряд проблем:
•
построение наиболее быстрого и точного маршрута;
•
налаживание коммуникации между всеми участниками сделки.
Таким образом, можно сделать вывод о том, что цель, была достигнута.
Список литературы Мобильное приложение как способ решения проблем микропредприятий и малых предприятий
- Documentation for app developers. [Электронный ресурс]. Режим доступа: https://developer.android.com/docs
- Route Calculation for Walking or Driving. [Электронный ресурс]. Режим доступа: https://developer.here.com/documentation/android-starter/dev_guide/topics/routing-starter.html