AURORA CALDAV DEMO
Мобильное приложение-календарь для работы с CalDAV-серверами
Платформа: ОС Аврора (Aurora SDK / Aurora IDE)
ОПИСАНИЕ ПРОЕКТА
Приложение Aurora CalDAV Demo представляет собой мобильный календарный клиент, разработанный для операционной системы Аврора. Основное назначение приложения — подключение к удалённому CalDAV-серверу, получение календарных событий, их отображение в мобильном интерфейсе и выполнение базовых операций управления календарными данными.
Приложение позволяет:
- подключаться к удалённому CalDAV-серверу;
- выполнять авторизацию пользователя;
- получать календарные события;
- отображать календарь в мобильном интерфейсе;
- просматривать события выбранного дня;
- создавать новые календарные события;
- удалять существующие события;
- обновлять данные при взаимодействии с сервером.
Приложение разработано как демонстрационный проект для изучения мобильной разработки под Aurora OS и взаимодействия с открытым календарным протоколом CalDAV.
ЛОГИКА РАБОТЫ ПРИЛОЖЕНИЯ
Основной принцип:
Приложение построено по клиент-серверной архитектуре.
Клиентская часть представляет собой мобильное приложение, работающее на Aurora OS.
Серверная часть представлена удалённым CalDAV-сервером, на котором хранятся календарные данные пользователя.
Принцип работы:
-
Пользователь вводит параметры подключения:
- URL CalDAV-сервера;
- имя пользователя;
- пароль;
- имя календаря.
-
Приложение выполняет сетевой запрос к серверу.
-
Сервер возвращает календарные данные.
-
Приложение обрабатывает полученный ответ.
-
События отображаются в мобильном интерфейсе.
2.2 Архитектура приложения
Проект состоит из нескольких основных частей:
- Интерфейсный уровень (QML)
Отвечает за взаимодействие с пользователем и визуальное отображение данных.
Основные компоненты:
-
MainPage.qml— главная страница приложения; -
ConnectionPanel.qml— панель подключения к серверу; -
CalendarMonthView.qml— отображение календаря; -
DayViewPanel.qml— просмотр событий выбранного дня; -
EventListPanel.qml— список календарных событий; -
AddEventPanel.qml— форма создания нового события; -
YearViewPanel.qml— представление календаря по годам.
- Программная логика (C++)
Отвечает за обработку данных и взаимодействие с сервером.
Основные компоненты:
-
CalDavClient— работа с CalDAV-сервером; -
CalendarEventModel— модель хранения событий; -
CalendarEvent— объект календарного события.
- Сетевой уровень
Для взаимодействия с сервером используется:
- HTTP
- WebDAV
- CalDAV
- QNetworkAccessManager (Qt)
ЦИКЛ РАБОТЫ ПРИЛОЖЕНИЯ
ШАГ 1. Запуск приложения
Приложение запускается в среде Aurora OS через Aurora IDE. После запуска пользователь получает экран подключения к серверу.
ШАГ 2. Подключение к серверу
Пользователь вводит:
- URL сервера;
- логин;
- пароль;
- имя календаря.
После нажатия кнопки подключения приложение выполняет авторизацию.
ШАГ 3. Получение данных
Приложение отправляет запрос к CalDAV-серверу.
Сервер возвращает:
- XML-ответ;
- календарные данные в формате ICS.
ШАГ 4. Обработка данных
Приложение:
- разбирает XML;
- извлекает календарные записи;
- преобразует события во внутреннюю модель данных.
ШАГ 5. Отображение календаря
После обработки данных пользователь получает:
- календарное представление;
- список событий выбранного дня;
- элементы управления событиями.
ШАГ 6. Управление событиями
Пользователь может:
- создать новое событие;
- удалить существующее событие.
Изменения отправляются на сервер и отображаются в приложении.
ЗАПУСК ПРОЕКТА
Требования
Для запуска проекта требуется:
- Aurora SDK
- Aurora IDE
- настроенный эмулятор Aurora OS или устройство
- доступ к CalDAV-серверу
Запуск
- Открыть проект в Aurora IDE.
- Выбрать целевую платформу.
- Выполнить сборку проекта.
- Запустить приложение.
ОСНОВНЫЕ ФУНКЦИИ ПРИЛОЖЕНИЯ
-
Подключение к серверу Поддерживается подключение к CalDAV-серверу с авторизацией пользователя.
-
Просмотр календаря
Пользователь может:
- просматривать календарь;
- выбирать дату;
- видеть события выбранного дня.
- Создание событий Пользователь может создать новую календарную запись.
Поддерживаются:
- название события;
- дата;
- время начала;
- время окончания.
- Удаление событий Пользователь может удалить ненужную календарную запись.
ОСОБЕННОСТИ РЕАЛИЗАЦИИ
-
Мобильная разработка под Aurora OS Приложение разработано специально для платформы Aurora OS с использованием стандартных инструментов мобильной разработки.
-
Разделение интерфейса и логики
Проект реализован по модульному принципу:
- интерфейс отдельно;
- программная логика отдельно;
- сетевое взаимодействие отдельно.
- Работа с CalDAV
Реализованы:
- подключение;
- получение событий;
- создание событий;
- удаление событий.
- Обработка календарных данных
Используются:
- XML;
- iCalendar (ICS);
- модели данных Qt.
ТЕХНОЛОГИИ
- Aurora OS
- Aurora IDE
- QML
- Sailfish Silica
- C++
- Qt Framework
- QNetworkAccessManager
- HTTP
- WebDAV
- CalDAV
- XML
- iCalendar (ICS)
ИСПОЛЬЗОВАНИЕ НЕЙРОСЕТЕЙ ПРИ РАЗРАБОТКЕ
При разработке проекта для помощи в проектировании архитектуры, генерации документации, анализе кода и отладке использовались нейросетевые инструменты:
- ChatGPT
АВТОР
Лунгу Виктория