Доработка приложения для планшета (Android 12)
Исходные данные
Приложение работает на планшете с диагональю 10 дюймов под управлением Android 12. К планшету по Wi-Fi подключены два внешних устройства:
- Банковский терминал для приема платежей (модель соответствует стандартам Vendor Vendor, реальное название скрыто).
- Микроконтроллер ESP32, выполняющий вспомогательные функции (по сигналам от планшета).
Задача
Необходимо провести доработку Java-кода приложения для обеспечения надежной и бесперебойной работы в связке с терминалом и ESP32. Требуется учесть возможные сбои Wi-Fi, потерю пакетов и переподключения.
Основные требования
- Стабильная отправка команд и получение ответов от банковского терминала по Wi-Fi.
- Корректная обработка статусов оплаты (успех, ошибка, timeout) с выводом пользователю на экран планшета.
- Асинхронный обмен данными с ESP32: прием показаний, отправка управляющих сигналов.
- Логирование всех сетевых событий (подключение, отключение, ошибки) в файл для последующей диагностики.
- Автоматическое восстановление соединения с терминалом и ESP32 при временной потере связи.
Технические детали
- Язык реализации: Java (существующее приложение, Android SDK 31+).
- Используемые библиотеки: разрешается добавить (retrofit, okhttp, socket-клиент) - согласовать с заказчиком.
- Требование к планшету: Android 12, разрешение экрана 1920x1200, Wi-Fi 2.4/5 ГГц.
- Необходимо сохранить существующий UI и бизнес-логику, доработки касаются только сетевого взаимодействия.
Формат сдачи
- Исходный код с комментариями (для измененных или новых классов/методов).
- Краткая инструкция по сборке и настройке (или обновленные разделы в существующей документации).
- Тестирование на реальном планшете с реальными устройствами (терминал+ESP32).