Refine NNNet UI and rename Android package
Some checks failed
Android CI / build (push) Has been cancelled

This commit is contained in:
dom4k
2026-03-16 20:29:49 +00:00
parent 3f304e901c
commit 1cfdb42e04
45 changed files with 1430 additions and 777 deletions

View File

@@ -11,10 +11,11 @@
## Текущее состояние
- BLE discovery + advertising работают.
- Реализован минимальный GATT transport для обмена mesh-пакетами.
- Есть foreground service, Room-хранилище, ACK/retry очередь и базовый Telegram-подобный UI.
- Реализованы список чатов, окно диалога, вкладка настроек, ручная проверка обновлений и опциональная автопроверка через `version.json`.
- Есть foreground service, Room-хранилище, ACK/retry очередь и UI в стиле Telegram.
- Реализованы главный экран со списком чатов, отдельный экран диалога, меню `три точки -> Настройки`, ручная проверка обновлений и опциональная автопроверка через `version.json`.
- При выключенном Bluetooth приложение запрашивает его включение перед запуском mesh.
- Публикация APK и сайта автоматизирована через `Makefile`.
- Проект и Android-приложение приведены к имени `NNNet`, пакет приложения: `pro.nnnteam.nnnet`.
## Стек
- Android приложение: **Kotlin**
@@ -42,7 +43,7 @@
3. **Messaging Layer**
- личные сообщения;
- список чатов и окно диалога;
- список чатов и отдельный экран диалога;
- статусы доставки (queued/sent/relayed/delivered).
4. **Data Layer**
@@ -78,6 +79,7 @@
- [x] Добавить защиту от дубликатов по `messageId` (in-memory cache, базово).
- [x] Реализовать mesh-forwarding с ограничением TTL (routing action layer, базово).
- [x] Добавить список чатов и базовый UI окна сообщений.
- [x] Перенести настройки в меню `три точки` и убрать debug-лог из пользовательского интерфейса.
- [x] Подключить Room и базовую схему хранения.
- [x] Добавить логирование сети и debug-экран маршрутов.
- [x] Добавить ручную проверку обновлений и опциональную автопроверку клиента.
@@ -107,3 +109,9 @@
## Ближайший следующий шаг
Добавить профили пользователей, шифрование payload и инструментальные тесты BLE-обмена между несколькими устройствами.
## Ограничения сети
- Выделенный хост для NNNet не нужен: сеть строится как P2P mesh между устройствами.
- Все узлы равноправны на уровне текущей архитектуры: каждое устройство может обнаруживать соседей, принимать и ретранслировать пакеты.
- Количество пользователей не бесконечно. Практический предел зависит от плотности устройств, качества BLE-эфира, числа одновременных соединений, частоты ретрансляции и ограничений батареи Android.
- Для школы такая схема подходит как офлайн-сеть без интернета, но для больших нагрузок всё равно понадобятся дополнительные оптимизации маршрутизации, дедупликации и доставки.