Коммит 8d0651b9 создал по автору lagutinakv's avatar lagutinakv Зафиксировано автором evseev84
Просмотр файлов

Add the section about Aurora OS development

владелец 159ea277
Это отличие свёрнуто
# Аврора SDK
Copyright © 2016–2025 ООО «Открытая мобильная платформа».
Этот документ предоставляется в соответствии
с [Публичной лицензией Creative Commons с указанием авторства версии 4.0 Международная](../../LICENSE.CC-BY-4.0.ru.md).
**Примечание.**
Модуль следует рассказывать после модуля про [Qt Creator](../qt_creator).
## Состав Аврора SDK
Аврора SDK основана на Qt Creator. Qt Creator — кроссплатформенная среда разработки, используемая
при работе с фреймворком Qt.
Эта IDE включает в себя все компоненты, присущие любой интегрированной среде разработки:
редактор кода, компилятор, отладчик.
Также она поддерживает интеграцию с системами контроля версий, валидацию и подпись пакетов.
Помимо IDE, в состав SDK входят:
* Aurora OS Emulator (эмулятор) — виртуальная машина, которая позволяет выполнять приложения
в окружении ОС Аврора аналогично работе на реальном устройстве.
* Aurora OS Build Engine (среда сборки) — окружение, поставляемое как виртуальная машина
или Docker-контейнер, которое обеспечивает среду для сборки приложений,
не зависящую от домашней операционной системы.
* Документация по архитектуре и API.
* Примеры и шаблоны приложений.
Система сборки и эмулятор поставляются в виде образов виртуальных машин для VirtualBox.
Однако, сам VirtualBox в состав SDK не входит.
Поэтому перед установкой SDK, необходимо сначала установить VirtualBox версии не ниже чем 4.1.18.
Альтернативно, начиная с версии ОС Аврора 4, можно использовать Docker.
Аврора SDK доступен для Linux, Windows и macOS.
SDK поставляется в виде графического инсталлятора, поэтому установка не должна вызывать трудностей.
## Варианты поставок Аврора SDK
Аврора SDK имеет следующие варианты поставки:
| Вариант | Аврора SDK (mb2) | Аврора SDK (BT) |
|:---|:---|:---|
| Среда сборки | Aurora OS Build Engine — окружение, поставляемое как виртуальная машина или Docker-образ, которое обеспечивает среду для сборки приложений, не зависящую от хостовой операционной системы | Аврора Build Tools — инструменты для кросс-компиляции |
| Инструмент сборки | mb2 | apptool |
| Процесс сборки | Сборка происходит кросс-компилятором `gcc` в окружении таргета. Для каждой архитектуры (x86_64, armv7hl, aarch64) эмулируется окружение сборки, таким образом инструменты сборки выполняют сборку так, как бы выполняли её нативно. | Сборка происходит кросс-компилятором `gcc` в окружении x86_64. Для сборки под архитектуры armv7hl и aarch64 в поставке имеется sysroot с библиотеками и исходными файлами для сборки. |
| Добавление пакетов | Предусмотрена возможность доустановки пакетов из официального репозитория, в том числе тех, которые не разрешены валидатором. | Нет возможности доустановить пакет из репозитория. Все библиотеки, разрешённые валидатором, поставляются в комплекте. Если нужных зависимостей нет, их требуется собирать самостоятельно. |
| Технология виртуализации для среды сборки | VirtualBox или Docker | Docker |
Таргет — это цель сборки; набор файлов, необходимых для сборки.
BT будет развиваться в будущих версиях ОС, MB2 - нет.
## Подключение внешнего устройства
Аврора SDK также может развернуть приложение на устройстве.
Для этой функции требуется, чтобы устройство было настроено с подключением USB или WLAN
к компьютеру и на нём был установлен пароль для работы через SSH.
Пароль задаётся на устройстве Настройки→Средства разработчика.
Для запуска приложения на устройстве в SDK необходимо выбрать подходящие параметры сборки.
Установка устройства осуществляется с помощью настроек IDE.
Это можно найти в меню «Инструменты» → «Параметры» → «Устройства».
В этом окне настроек нажмите «Добавить ...», чтобы начать создание настроек устройства.
Далее вы сможете дополнительно настроить конфигурацию соединения либо оставить конфигурацию по умолчанию.
## Aurora Debug Tool
Aurora Debug Tool (ADT) — это консольная утилита для отладки, управления и взаимодействия с ОС Аврора.
Не зависит от Аврора SDK.
Поддерживает Linux, MacOS, Windows.
Управляет устройствами и эмуляторами.
Управляет жизненным циклом приложения при разработке - загрузка, установка и отладка.
Получение логов системы и приложений.
Выполнение удаленных команд на устройстве или эмуляторе.
## Дополнительные возможности SDK
О дополнительных возможностях SDK можно узнать в документации по ссылкам на слайде.
# Тесты по теме «Аврора SDK»
Copyright © 2016–2025 ООО «Открытая мобильная платформа».
Этот документ предоставляется в соответствии
с [Публичной лицензией Creative Commons с указанием авторства версии 4.0 Международная](../../LICENSE.CC-BY-4.0.ru.md).
## Multiple choice
Какие команды отвечают за установку и сборку пакетов в Build Engine?
---
* sb
* **sb2**
* **mb2**
* mb
## Single choice
Какой комплект архитектуры необходимо выбрать для установки приложения на эмулятор?
---
* **x86**
* ARM
## Multiple choice
Какие варианты поставок SDK содержат IDE?
---
* Аврора Platform SDK
* **Аврора SDK (MB2)**
* **Аврора SDK (BT)**
## Multiple choice
Как можно авторизоваться на эмуляторе?
---
* Через Аврора IDE
* **Через командную строку, использовав ключ авторизации из каталога AuroraOS**
* **Через командную строку, задав пароль в настройках**
* На эмуляторе нельзя авторизоваться
* Чтобы подключиться к эмулятору из командной строки, авторизация не нужна
## Multiple choice
Какие возможности даёт разработчику Аврора IDE?
---
* Работа с командной строкой
* **Редактор кода**
* **Установка приложения на устройство**
* **Создание приложения из шаблона**
# Модули для курсов разработки приложений на Qt
Copyright © 2016–2023 ООО «Открытая мобильная платформа».
Copyright © 2016–2025 ООО «Открытая мобильная платформа».
Этот документ предоставляется в соответствии
с [Публичной лицензией Creative Commons с указанием авторства версии 4.0 Международная](../../LICENSE.CC-BY-4.0.ru.md).
* [Операционные системы и подходы к разработке](./os_and_development_approaches)
* Лекция:
[cлайды](./os_and_development_approaches/lecture.fodp),
[конспект](./os_and_development_approaches/lecture.md)
* [Фреймворк Qt и технология Qt Quick](./qt_framework_and_qt_quick_technology)
* Лекция:
[cлайды](./qt_framework_and_qt_quick_technology/lecture.fodp),
[конспект](./qt_framework_and_qt_quick_technology/lecture.md)
* [Инструменты разработки](./development_tools)
* Лекция:
[cлайды](./development_tools/lecture.fodp),
[конспект](./development_tools/lecture.md)
* [Тесты](./development_tools/tests.md)
* Особенности разработки под ОС Аврора
* [Операционные системы и подходы к разработке](./os_and_development_approaches)
* Лекция:
[cлайды](./os_and_development_approaches/lecture.fodp),
[конспект](./os_and_development_approaches/lecture.md)
* [Тесты](./os_and_development_approaches/tests.md)
* [ОС Аврора](./os_aurora)
* Лекция:
[cлайды](./os_aurora/lecture.fodp),
[конспект](./os_aurora/lecture.md)
* [Тесты](./os_aurora/tests.md)
* [Кроссплатформенный фреймворк Qt](./qt_framework_and_qt_quick_technology)
* Лекция:
[cлайды](./qt_framework_and_qt_quick_technology/lecture.fodp),
[конспект](./qt_framework_and_qt_quick_technology/lecture.md)
* [Тесты](./qt_framework_and_qt_quick_technology/tests.md)
* [Qt Creator](./qt_creator)
* Лекция:
[cлайды](./qt_creator/lecture.fodp),
[конспект](./qt_creator/lecture.md)
* [Тесты](./qt_creator/tests.md)
* [Аврора SDK](./aurora_sdk)
* Лекция:
[cлайды](./aurora_sdk/lecture.fodp),
[конспект](./aurora_sdk/lecture.md)
* [Тесты](./aurora_sdk/tests.md)
* [Эмулятор](./emulator)
* Лекция:
[cлайды](./emulator/lecture.fodp),
[конспект](./emulator/lecture.md)
* [Тесты](./emulator/tests.md)
* [Структура проекта](./project_structure)
* Лекция:
[cлайды](./project_structure/lecture.fodp),
[конспект](./project_structure/lecture.md)
* [Тесты](./project_structure/tests.md)
* [Этапы запуска проекта](./project_launch)
* Лекция:
[cлайды](./project_launch/lecture.fodp),
[конспект](./project_launch/lecture.md)
* [Тесты](./project_launch/tests.md)
* [QML Live](./qml_live)
* Лекция:
[cлайды](./qml_live/lecture.fodp),
[конспект](./qml_live/lecture.md)
* [Тесты](./qml_live/tests.md)
* [Отладка и профилирование](./debug_and_profiling)
* Лекция:
[cлайды](./debug_and_profiling/lecture.fodp),
......
Это отличие свёрнуто
# Эмулятор
Copyright © 2025 ООО «Открытая мобильная платформа».
Этот документ предоставляется в соответствии
с [Публичной лицензией Creative Commons с указанием авторства версии 4.0 Международная](../../LICENSE.CC-BY-4.0.ru.md).
## Эмулятор ОС Аврора
Aurora OS Emulator (эмулятор) — виртуальная машина, которая позволяет выполнять приложения в окружении ОС Аврора аналогично работе на мобильном устройстве.
Эмулятор можно запустить из Аврора SDK, нажав нижнюю кнопку в левом нижнем меню в режиме Редактора.
## QEMU эмулятор
Не требует предварительной установки зависимостей.
Собирается на нашей инфраструктуре, поставляется вместе с SDK.
Эмуляция архитектуры ARM.
Поддержка процессоров Apple M Series и Baikal.
Поддержка ускорения OpenGL.
## Управление эмуляторами
Можно установить несколько эмуляторов разных версий ОС Аврора через Maintenance Tool.
Нужно запустить Maintenance Tool из меню приложений компьютера или из каталога AuroraOS, выбрать пункт Добавление или удаление компонентов, отметить галочкой нужные эмуляторы и установить их.
Новый эмулятор будет доступен для развёртывания приложения. Чтобы его выбрать, следует открыть левое нижнее меню сборки и развёртывания и в поле Устройство указать эмулятор из списка.
## Управление моделью эмулятора
Можно изменить модель эмулятора, воспользовавшись верхним меню **Инструменты → ОС Аврора → Режим эмулятора** или **Инструменты → Параметры → ОС Аврора → Режимы эмулятора**.
По умолчанию модели эмулятора соответствуют реальным устройствам, подходящим для установленной версии Аврора SDK. Модель эмулятора задаёт тип устройства, разрешение экрана, ориентации экрана и другие параметры.
Также можно создать собственную модель эмулятора.
## Работа с командной строкой
Авторизация на эмуляторе с правами пользователя:
```bash
ssh -p 2223 defaultuser@localhost
ssh -p 2223 -i ~/AuroraOS/vmshare/ssh/private_keys/sdk defaultuser@localhost
```
Авторизация на эмуляторе с правами суперпользователя:
```bash
ssh -p 2223 -i ~/AuroraOS/vmshare/ssh/private_keys/sdk root@localhost
```
В опции -i указывается путь к закрытому ключу для доступа через SSH. Один ключ используется для всех пользователей.
С помощью утилиты scp и ключа для авторизации можно передавать данные на эмулятор.
Далее приведён пример передачи rpm-пакета, находящегося на компьютере разработчика по пути ./RPMS/.rpm:
```bash
scp -P 2223 -i ~/AuroraOS/vmshare/ssh/private_keys/sdk ./RPMS/<package>.rpm <user>@localhost:
```
## Встраиваемый эмулятор ОС Аврора
Встраиваемый эмулятор ОС Аврора  — это автономный и гибкий инструмент для эмуляции ОС Аврора.
* Работает без Аврора SDK.
* Управляется через командную строку.
* Поддерживает Linux, MacOS, Windows.
* Поддерживает запуск в CI/CD для тестирования UI приложения.
* Можно интегрировать в сторонние IDE.
* Поддерживает запуск x86_64 и aarch64 образов эмулятора.
# Тесты по теме «Эмулятор»
Copyright&nbsp;©&nbsp;2025 ООО&nbsp;«Открытая мобильная платформа».
Этот документ предоставляется в&nbsp;соответствии
с&nbsp;[Публичной лицензией Creative Commons с&nbsp;указанием авторства версии&nbsp;4.0 Международная](../../LICENSE.CC-BY-4.0.ru.md).
## Single choice
Сколько эмуляторов будет установлено по умолчанию непосредственно при установке SDK?
---
* **1**
* 0
* Несколько по выбору
## Single choice
Сколько эмуляторов может быть доустановлено для работы через SDK?
---
* 1
* 0
* **Несколько по выбору**
## Single choice
Каким инструментом нужно воспользоваться, чтобы установить несколько эмуляторов?
---
* Аврора IDE
* Virtual Box
* Docker
* **Maintenance Tool**
## Single choice
Можно ли создать собственную модель эмулятора?
---
* нет
* **да**
## Multiple choice
Какие параметры имеются у моделей эмулятора?
---
* **Разрешение экрана**
* **Ориентация экрана**
* Количество экранов
* Версия ОС Аврора
Это отличие свёрнуто
......@@ -115,221 +115,10 @@ iOS
## Кроссплатформенные технологии
На слайде перечислены рразличные кроссплатформенные технологии.
На слайде перечислены различные кроссплатформенные технологии.
* WEB-технологии (JavaScript, HTML 5, CSS).
* React Native.
* jQuery Mobile.
* PhoneGap.
* Bootstrap.
* Общие WEB-технологии, низкий порог входа, быстрое развитие.
* Низкая производительность, некоторые ограничения API.
* Xamarin (C#).
* Общие технологии .NET.
* Моно как еще одна виртуальная машина.
* Flutter - фреймворк с открытым исходным кодом для создания мобильных приложений.
* Kotlin MultiPlatform позволяет совместно использовать код на различных платформах.
* Qt (C++, QML, JavaScript) — изучается в нашем курсе.
* Эффективные собственные приложения с декларативным интерфейсом.
## ОС Аврора
ОС Аврора — это операционная система, предназначенная для смартфонов и планшетов, она основана
на Linux, это POSIX-овместимая ОС, сейчас поддерживаются 2 наиболее распространенные
архитектуры — arm и x86.
Операционная система была разработана таким образом, чтобы предоставлять удобную многозадачность
и это реализовано с помощью интерфейса пользователя который ориентирован под управление жестами,
сейчас эту тенденцию перенимают также Android и iOS.
Встроенная система защиты информации шифрует данные, которые отправляет и принимает пользователь.
Смартфоны и планшеты на ОС Аврора управляются через единый центр.
С его помощью можно настраивать корпоративные политики управления.
Также в ОС Аврора имеется сервис уведомлений.
Он предназначен для оперативной доставки информации в виде текстовых Push-сообщений на устройства.
## UI/UX ОС Аврора
Особенности пользовательского интерфейса ОС Аврора.
* Управление жестами - приложения управляются с помощью набора жестов.
* Автоматическая адаптация под светлую/тёмную тему и другие, определеямые атмосферами.
Цветовая схема определяется текущей атмосферой ОС Аврора.
Для светлой схемы Light (DarkOnLight) будут определены тёмный цвет шрифта и значков и светлый фон,
для тёмной схемы Dark (LightOnDark) — светлые цвета содержимого и тёмный фон.
* Персонализация внешнего вида приложений.
* Адаптивные приложения для смартфонов и планшетов.
* Быстрые действия с экрана задач.
* Высокая скорость работы интерфейса.
* Функциональные системные уведомления.
## История ОС Аврора
История ОС Аврора берет начало в нулевых годах.
С 2007 года компания Nokia занималась развитием ОС.
Помимо довольно популярной тогда ОС Symbian, Nokia также работала над Linux-системой для мобильных
устройств, которая называлась Maemo.
Примерно в то же время компания Intel развивала свою операционную систему Moblin.
В результате объединения проектов в 2010 году появился проект MeeGo — разработка операционной
системы, которая могла бы охватить разные типы устройств, от десктопных до мобильных.
Параллельно с этим под управлением open-source сообщества развивался проект Mer.
Он предоставлял основу для построения операционных систем, большой фреймворк включающий ряд
библиотек, в том числе Qt.
В 2011 году мобильное подразделение Nokia перешло под управление Microsoft, однако некоторые
сотрудники были заинтересованы в том, чтобы продолжить работу с Linux-системами и основали стартап
Jolla в Финляндии.
Сотрудники Jolla начали работу над своей операционной системой, вобравшей в себя многие наработки
проектов Maemo и Meego.
Новая система получила название Sailfish OS и была представлена в 2012 году.
В 2016 году в россии была основана компания Открытая мобильная платформа, которая стала партнером
Jolla по работе над Sailfish OS.
Был сформирован отдельный продукт Sailfish Mobile OS RUS, нацеленный на корпоративный рынок
и госкомпании России.
А в 2019 году операционная система получила название ОС Аврора.
Компания "Открытая мобильная платформа" стала полноправным владельцем исходного кода операционной
системы, а также обеспечила полный цикл разработки в РФ.
## Особенности ОС Аврора
Таким образом, ОС Аврора обладает рядом исторических особенностей.
В ее основе лежит полноценная Linux-система, и в режиме разработчика доступны все привычные утилиты.
Полная многозадачность по принципу десктопных систем позволяет пользователю запускать несколько
приложений и управлять ими в свернутом виде.
Для распространения приложений используется система пакетов rpm.
Пакеты подписываются и проверяются на соответствие требованиям ОС Аврора.
И с устройством, и с SDK можно взаимодействовать в режиме разработчика: через терминал,
в частности, с помощью ssh и другие команды bash.
Основные библиотеки для создания прикладного ПО представлены фреймворком Qt — удобным
как для создания интерфейсов, так и для доступа к различным API.
Графические интерфейсы приложений можно разрабатывать с помощью QML.
Приложения взаимодействуют между собой через интерфейсы D-Bus.
IDE для разработки основана на Qt Creator и во многом обладает его интерфейсом.
## Корпоративная мобильность с платформой Аврора
Одна из задач компании Открытая мобильная платформа состоит в том, чтобы предложить заказчикам
возможность создавать собственную инфраструктуру для управления парком мобильных устройств.
Важно уметь отслеживать статусы устройств, управлять набором доступных приложений
и обновлениями ОС, а также иметь возможность заблокировать устройство, например, в случае утери,
и безопасно удалить данные.
Это возможно благодаря сопутствующему продукту Аврора-центр — платформе управления мобильными
устройствами.
Она разворачивается на сервере и предоставляет набор функций для управления устройствами, которыми
пользуются сотрудники, набором приложений и обновлениями ОС.
Система уведомлений Аврора предназначена для доставки push-сообщений на смартфоны и планшеты
под управлением мобильной ОС Аврора.
Для отправки безопасных push-сообщений на устройство организован push-сервер.
ОС Аврора внесена в реестр отечественного ПО, зарегистрирована в Роспатенте и обладет рядом
сертификатов ФСБ и ФСТЭК на соответствие требованиям профиля защиты операционных систем.
Также для защиты данных на ОС АВрора можно использовать сертифицированные VPN каналы.
## Устройства на ОС Аврора
ОС Аврора устанавливается на смартфоны и планшеты.
Продажа мобильных устройств осуществляется только корпоративным и государственным заказчикам.
Актуальный список устройств представлен на сайте auroraos.ru.
## Архитектура ОС Аврора
Архитектура операционной системы состоит из трех уровней.
На базовом уровне находятся ядро линукс, аппаратно зависимые компоненты и прошивка.
Уровень связующего ПО предназначен, как правило, для фреймворков.
В данном случае он включает в себя mer, который содержит цель для сборки кода и запуска ОС Аврора
и qml-приложений.
Цель — это набор библиотек, заголовков для конкретной версии или архитектуры процессора.
Фреймворк Qt предоставляет основные библиотеки для разработки прикладного ПО.
Используется в качестве основной среды разработки приложений и предоставляет API для частого
использования других функций устройства.
Верхний уровень предназначен для приложений и графического интерфейса.
Основной домашний экран и область пользовательского интерфейса приложения управляются подсистемой
Lipstick, которая обрабатывает:
* домашний экран и панель запуска приложений;
* навигацию с помощью жестов в основном системном интерфейсе;
* композицию приложений;
* окна и уведомления на системном уровне и на уровне пользовательского пространства;
* блокировку устройства;
* и изменение внешнего вида интерфейса
ОС Аврора включает в себя большое количество связующих библиотек и фреймворков, многие из которых
используются приложениями.
Такие библиотеки и фреймворки написаны на языках C и C++.
Библиотеки, которые используются непосредственно в UI, включают в себя модули QML.
Это позволяет приложениям использовать их без дополнительных биндингов.
Системные библиотеки включают в себя функции управления системой и устройством, в том числе:
* обновление системы;
* контроль устройств и обработка событий (например, событий, связанных с USB, зарядным
устройством, разъемом для подключения наушников и тд);
* управление режимом электропитания.
В ОС Аврора используется менеджер системы и сервисов systemd.
Данный подход сильно отличается от типичных скриптов инициализации SysV, но также является более
подходящим для мобильных систем в связи с запуском демонов по запросу.
Также используется дополнительный демон sensord, позволяющий записывать данные с датчиков
в циклические базы данных для последующей визуализации.
Компоненты, организующие интерфейс пользователя находятся в составе бибилиотеки Silica.
## Аврора SDK
Аврора SDK — это набор инструментов разработчика для создания прикладного ПО.
IDE основана на Qt Creator.
Среда сборки распространяется внутри Virtual Box, что позволяет использовать одни и те же утилиты
независимо от хостовой ОС.
Начиная с версии 4, вместо Virtual Box можно использовать Docker.
Эмулятор поставляется с образом ОС.
В IDE для разработки можно подключить внешние устройства, чтобы проверять работу приложения
на реальном смартфоне или планшете.
Установочные пакеты в IDE можно и нужно подписывать и валидировать.
Эти действия можно задать на этапе сборки прложения, а также использовать для них плагины.
Кроме того, в IDE интегрированы документация и примеры.
## Унификация сертифицированной и корпоративной версий ОС
В конце 2021 года вышла новая версия российской мобильной операционной системы Аврора 4.0,
существенно усовершенствованная по сравнению с предыдущей версией 3.2.3.
По сравнению с предыдущей версией ОС Аврора 4.0 гораздо более безопасна.
В частности, были унифицированы политики безопасности для двух вариантов исполнения — корпоративной
и сертифицированной версии ОС, в каждой из которых стали доступны основные механизмы безопасности:
подпись пакетов, валидация приложений, подпись модулей ядра, контроль целостности, шифрование
пользовательских данных, изоляция приложений.
В третьей версии были проблемы адаптации приложений с корпоративной версии на сертифицированную,
поскольку разработчики не учитывали ограничения сертифицированной.
Теперь можно гарантировать, что все приложения, написанные для ОС Аврора, могут использоваться
в проектах и с корпоративной, и с серифицированной версией.
Более того, Аврора-приложения могут устанавливаться на оба варианта исполнения ОС
без дополнительной пересборки в другой версии SDK.
На устройствах ОС Аврора 4 введён многопользовательский режим с поддержкой до 6 пользователей
и администратора.
Администратор обладает дополнительными привилегиями, в частности, может управлять аккаунтами
других пользователей, настраивать политики безопасности и т. п.
Данные всех пользователей полностью независимы друг от друга, так что на одном устройстве можно
организовать посменный режим работы с новыми настройками рабочего окружения для каждого пользователя.
Данные каждого пользователя полностью защищены от других, шифрование данных осуществляется прозрачно
для приложений: монтирование директории происходит при авторизации пользователя.
# Тесты по теме «Операционные системы и&nbsp;подходы к&nbsp;разработке»
Copyright&nbsp;©&nbsp;2016–2025 ООО&nbsp;«Открытая мобильная платформа».
Этот документ предоставляется в&nbsp;соответствии
с&nbsp;[Публичной лицензией Creative Commons с&nbsp;указанием авторства версии&nbsp;4.0 Международная](../../LICENSE.CC-BY-4.0.ru.md).
## Multiple choice
Выберите утверждения, справедливые для ОС Аврора.
---
* **Мобильная операционная система**
* **POSIX-совместимый дистрибутив Linux**
* Использует инфраструктуру Google
* Выполняет байт-код Java, предоставляя нативный API
Это отличие свёрнуто
# ОС Аврора
Copyright&nbsp;©&nbsp;2016–2025 ООО&nbsp;«Открытая мобильная платформа».
Этот документ предоставляется в&nbsp;соответствии
с&nbsp;[Публичной лицензией Creative Commons с&nbsp;указанием авторства версии&nbsp;4.0 Международная](../../LICENSE.CC-BY-4.0.ru.md).
## Операционная система Аврора
ОС Аврора — это операционная система, предназначенная для смартфонов и планшетов, она основана
на Linux, это POSIX-овместимая ОС.
Операционная система была разработана таким образом, чтобы предоставлять удобную многозадачность.
Это реализовано с помощью интерфейса пользователя который ориентирован под управление жестами,
сейчас эту тенденцию перенимают также Android и iOS.
Аврора гарантирует надежную защиту конфиденциальной информации как
в индивидуальном, так и корпоративном использовании.
Встроенная система защиты информации шифрует данные, которые отправляет и принимает пользователь.
Смартфоны и планшеты на ОС Аврора управляются через единый центр.
С его помощью можно настраивать корпоративные политики управления
(например, удалённая установка приложений, их обновление, трекинг перемещений мобильного устройства и т.д.).
## UI/UX ОС Аврора
Особенности пользовательского интерфейса ОС Аврора.
* Управление жестами - приложения управляются с помощью набора жестов.
* Автоматическая адаптация под светлую/тёмную тему и другие, определеямые атмосферами.
Цветовая схема определяется текущей атмосферой ОС Аврора.
Для светлой схемы Light (DarkOnLight) будут определены тёмный цвет шрифта и значков и светлый фон,
для тёмной схемы Dark (LightOnDark) — светлые цвета содержимого и тёмный фон.
* Персонализация внешнего вида приложений.
* Адаптивные приложения для смартфонов и планшетов.
* Быстрые действия с экрана задач.
* Высокая скорость работы интерфейса.
* Функциональные системные уведомления.
## Особенности ОС Аврора
ОС Аврора обладает рядом особенностей.
В ее основе лежит полноценная Linux-система, и в режиме разработчика доступны все привычные утилиты.
Полная многозадачность по принципу десктопных систем позволяет пользователю запускать несколько
приложений и управлять ими в свернутом виде.
Для распространения приложений используется система пакетов rpm.
Пакеты подписываются и проверяются на соответствие требованиям ОС Аврора.
И с устройством, и с SDK можно взаимодействовать в режиме разработчика: через терминал,
в частности, с помощью ssh и другие команды bash.
Основные библиотеки для создания прикладного ПО представлены фреймворком Qt — удобным
как для создания интерфейсов, так и для доступа к различным API.
Графические интерфейсы приложений можно разрабатывать с помощью QML.
Приложения взаимодействуют между собой через интерфейсы D-Bus.
IDE для разработки основана на Qt Creator и во многом обладает его интерфейсом.
## Корпоративная мобильность
Одна из задач компании Открытая мобильная платформа состоит в том, чтобы предложить заказчикам
возможность создавать собственную инфраструктуру для управления парком мобильных устройств.
Важно уметь отслеживать статусы устройств, управлять набором доступных приложений
и обновлениями ОС, а также иметь возможность заблокировать устройство, например, в случае утери,
и безопасно удалить данные.
Это возможно благодаря сопутствующему продукту Аврора-центр — платформе управления мобильными
устройствами.
Она разворачивается на сервере и предоставляет набор функций для управления устройствами, которыми
пользуются сотрудники, набором приложений и обновлениями ОС.
Система уведомлений Аврора предназначена для доставки push-сообщений на смартфоны и планшеты
под управлением мобильной ОС Аврора.
Для отправки безопасных push-сообщений на устройство организован push-сервер.
ОС Аврора внесена в реестр отечественного ПО, зарегистрирована в Роспатенте и обладет рядом
сертификатов ФСБ и ФСТЭК на соответствие требованиям профиля защиты операционных систем.
Также для защиты данных на ОС АВрора можно использовать сертифицированные VPN-каналы.
## Устройства на ОС Аврора
ОС Аврора устанавливается на смартфоны и планшеты.
Продажа мобильных устройств осуществляется только корпоративным (B2B) и государственным заказчикам (B2G).
Актуальный список устройств представлен на сайте auroraos.ru.
## Архитектура ОС Аврора
Архитектура операционной системы состоит из трех уровней.
На базовом уровне находятся ядро линукс, аппаратно зависимые компоненты и прошивка.
Уровень связующего ПО предназначен, как правило, для фреймворков.
В данном случае он включает в себя mer, который содержит цель для сборки кода и запуска ОС Аврора
и qml-приложений.
Цель (таргет) — это набор библиотек, заголовков для конкретной версии или архитектуры процессора.
Фреймворк Qt предоставляет основные библиотеки для разработки прикладного ПО.
Используется в качестве основной среды разработки приложений и предоставляет API для частого
использования других функций устройства.
Верхний уровень предназначен для приложений и графического интерфейса.
Основной домашний экран и область пользовательского интерфейса приложения управляются подсистемой
Lipstick, которая обрабатывает:
* домашний экран и панель запуска приложений;
* навигацию с помощью жестов в основном системном интерфейсе;
* композицию приложений;
* окна и уведомления на системном уровне и на уровне пользовательского пространства;
* блокировку устройства;
* и изменение внешнего вида интерфейса
ОС Аврора включает в себя большое количество связующих библиотек и фреймворков, многие из которых
используются приложениями.
Такие библиотеки и фреймворки написаны на языках C и C++.
Библиотеки, которые используются непосредственно в UI, включают в себя модули QML.
Это позволяет приложениям использовать их без дополнительных биндингов.
Системные библиотеки включают в себя функции управления системой и устройством, в том числе:
* обновление системы;
* контроль устройств и обработка событий (например, событий, связанных с USB, зарядным
устройством, разъемом для подключения наушников и тд);
* управление режимом электропитания.
В ОС Аврора используется менеджер системы и сервисов systemd.
Данный подход сильно отличается от типичных скриптов инициализации SysV, но также является более
подходящим для мобильных систем в связи с запуском демонов по запросу.
Также используется дополнительный демон sensord, позволяющий записывать данные с датчиков
в циклические базы данных для последующей визуализации.
Компоненты, организующие интерфейс пользователя находятся в составе бибилиотеки Silica.
## Аврора SDK
Аврора — единственная из российских ОС на настоящий момент, которая предоставляет полноценный собственный SDK.
Аврора SDK — это набор инструментов разработчика для создания прикладного ПО.
IDE основана на Qt Creator.
Среда сборки распространяется внутри Virtual Box, что позволяет использовать одни и те же утилиты
независимо от хостовой ОС.
Альтернативно вместо Virtual Box можно использовать Docker.
Эмулятор поставляется с образом ОС.
В IDE для разработки можно подключить внешние устройства, чтобы проверять работу приложения
на реальном смартфоне или планшете.
Установочные пакеты в IDE можно и нужно подписывать и валидировать.
Эти действия можно задать на этапе сборки прложения, а также использовать для них плагины.
Кроме того, в IDE интегрированы документация и примеры.
## Безопасность ОС Аврора
Прикладная
Все механизмы сконфигурированы и работают изначально,
не требуют дорогостоящей настройки
Эшелонированная
Используется комплекс мер и методов,
которые пересекаются и дополняют друг друга.
ОС Аврора имеет эшелонированную целостную модель безопасности.
Изолирует каждое приложение и обеспечивает валидацию происхождения.
## Технологии разработки для ОС Аврора
* Qt/C++ QML
(Нативная разработка)
* Фреймворк для создания высокопроизводительных приложений с прямым доступом к API ОС Аврора
* Производительность
* Доступ ко всем API
* Нативный UI/UX
* Выбрать, если:
* Нужен полный контроль над приложением
* Важна максимальная оптимизация
* Flutter/Dart
(Кросс-платформа)
* UI-фреймворк для создания адаптивных приложений с единой кодовой базой для Аврора/Android/iOS
* Единый код
* Быстрая разработка UI
* Горячая перезагрузка
* Выбрать, если:
* Нужно покрыть несколько платформ
* Уже есть приложение на Flutter для Android/iOS
* WebView/CEF
(Гибридные приложения)
* Обертка для веб-приложений на базе Chromium Embedded Framework (CEF)
* Готовые веб-решения
* Быстрый старт для WEB
* Доступ к API ОС через C++
* Выбрать, если:
* Есть WEB-версия приложения
* Нужен MVP за короткий срок
* PWA
(Прогрессивные веб-приложения)
* Веб-приложения, работающие как нативные (доступно с Аврора 5.2)
* Офлайн-режим
* Установка через браузер
* Интеграция с сервисами
* Выбрать, если:
* Нужен быстрый порт существующего WEB-приложения
* Ограниченный бюджет на разработку
* Будет доступен в ОС Аврора 5.2
# Тесты по теме «ОС Аврора»
Copyright&nbsp;©&nbsp;2016–2025 ООО&nbsp;«Открытая мобильная платформа».
Этот документ предоставляется в&nbsp;соответствии
с&nbsp;[Публичной лицензией Creative Commons с&nbsp;указанием авторства версии&nbsp;4.0 Международная](../../LICENSE.CC-BY-4.0.ru.md).
## Multiple choice
Выберите утверждения, справедливые для ОС Аврора.
---
* **Инфраструктура может быть развернута внутри отдельной компании**
* **POSIX-совместимый дистрибутив Linux**
* Использует инфраструктуру Google
* Выполняет байт-код Java, предоставляя нативный API
## Single choice
Какой демон используется в качестве менеджера системы и сервисов ОС Аврора?
---
* **systemd**
* SysV
* Upstart
* init.d
## Multiple choice
На какие устройства можно установить ОС Аврора?
---
* Компьютеры
* Другие портативные устройства
* **Смартфоны**
* **Планшеты**
## Matching
Установите соответствие между элементами и уровнями архитектуры ОС Аврора.
---
| | |
|---------------------------------|---------------------------|
| Базовый уровень | Hardware Adaptation Layer |
| Промежуточный уровень | libhybrus |
| Уровень интерфейса и приложений | Lipstick |
## Multiple choice
Какие архитектуры поддерживает ОС Аврора?
---
* Эльбрус-3
* **x86**
* **ARM**
* powerPC
## Single choice
Сколько аккаунтов пользователей может быть на устройстве ОС Аврора?
---
* 1
* 2: администратор и пользователь
* **7: администратор и 6 пользователей**
* Количество не ограничено
## Multiple choice
Что требуется, чтобы разрабатывать приложения для ОС Аврора с помощью Qt?
---
* Qt SDK
* **Аврора SDK**
* **Virtual Box**
Это отличие свёрнуто
Это отличие свёрнуто
# Тесты по теме «Этапы запуска проекта»
Copyright&nbsp;©&nbsp;2016–2025 ООО&nbsp;«Открытая мобильная платформа».
Этот документ предоставляется в&nbsp;соответствии
с&nbsp;[Публичной лицензией Creative Commons с&nbsp;указанием авторства версии&nbsp;4.0 Международная](../../LICENSE.CC-BY-4.0.ru.md).
## Text
Какое разрешение нужно использовать, чтобы получить доступ к стандартной директории с изображениями?
---
Pictures
## Single choice
Какое имя установочного пакета является допустимым?
---
* **ru.auroraos.myapp-0.1-1.armv7hl.rpm**
* ru.auroraos.myapp-0.1-1.arm.rpm
* ru.auroraos.myapp.rpm
* myapp-0.1.armv7hl.rpm
## Order
Расположите в правильном порядке этапы запуска проекта:
---
* Сборка rpm на основе spec-файла
* Подпись rpm-пакета
* Валидация rpm-пакета
* Установка rpm-пакета
## Multiple choice
Чем можно подписывать приложение на этапе разработки?
---
* **Публичными ключами**
* **Ключами разработчика с сертификатом, заверенным ОМП**
* Любыми ключами разработчика
## Multiple choice
Что проверяет валидатор?
---
* **Имя пакета**
* **Зависимости приложения**
* **Иконки**
* Компилируется ли код приложения
* Утечки памяти
* **Подпись**
Это отличие свёрнуто
# Структура проекта
Copyright&nbsp;©&nbsp;2016–2025 ООО&nbsp;«Открытая мобильная платформа».
Этот документ предоставляется в&nbsp;соответствии
с&nbsp;[Публичной лицензией Creative Commons с&nbsp;указанием авторства версии&nbsp;4.0 Международная](../../LICENSE.CC-BY-4.0.ru.md).
## Начало работы с проектом
Создание или открытие проекта приложения.
* Файлы проекта должны быть в директории, указанной при установке SDK, или в домашнем каталоге.
* Приложение из базового шаблона.
* Начало → Проекты → Новый проект.
* Открытие существующего проекта Меню → Файл → Открыть файл или проект.
## Создание приложения
Для создания нового проекта из шаблона необходимо выполнить следующие действия:
1. В основном окне Аврора IDE выбрать пункт меню «Файл» → «Создать файл или проект...».
2. В открывшемся окне «Новый файл или проект» выбрать вкладку «Проекты» → «Приложение»
и отметить «Приложение Qt Quick для ОС Аврора», после чего нажать кнопку «Выбрать...».
3. В появившемся окне «Введение и размещение проекта» указать название вашей организации,
имя проекта, директорию.
Важно иметь в виду, что проект должен находиться или в домашней директории пользователя,
или в альтернативной директории, указанной при установке Аврора SDK.
Если отметить пункт «Размещение проекта по умолчанию», то указанная директория будет
предлагаться для следующих создаваемых проектов.
4. На следующих двух вкладках необходимо указать разрешения, которые необходимы вашему приложению.
Это может быть доступ к директориям, к api для работы с данными и т.п.
5. В качестве системы сборки можно выбрать CMake.
6. В открывшемся окне «Выбор комплекта» выбрать необходимые комплекты для сборки и нажать кнопку «Далее».
Комплекты armv7hl и aarch64 используются для мобильных устройств, x86_64 — для эмулятора.
Позже набор комплектов можно изменить в настройках проекта.
7. В следующем окне «Application Details» ввести необходимые данные о приложении и нажать кнопку «Далее».
8. В появившемся окне «Управление проектом» выбрать необходимые данные и нажать кнопку «Завершить».
Данное окно позволяет настроить взаимное положение проекта относительно других и подключить одну
из систем контроля версий, доступных в операционной системе.
9. В открывшемся редакторе исходного кода можно приступить к работе над проектом.
## Директория проекта приложений
Структура проекта:
* Сборка с cmake
* CMakeLists.txt — описание структуры, модули
* Сборка с qmake
* Файл .pro содержит описание структуры, подключаемые модули и другие конфигурационные настройки проекта.
* Файл .pro.user — файл с локальными настройками. При распространении проекта его передавать не надо.
* В каталоге src файлы с расширением .cpp содержит исходный код на C++, файлы
.h — это заголовочные файлы на C++.
* Файлы .qml в каталоге qml содержат исходный код на QML.
* icons — иконки для значка приложения
* rpm/<имя проекта>.spec — параметры сборки rpm-пакета
* <имя проекта>.desktop — параметры запуска приложения
* Файлы .ts в каталоге translations — это файлы переводов.
## Файл .desktop
В desktop-файле следует придерживаться следующей структуры.
Использование значения строки X-Nemo-Application-Type=silica-qt5 позволяет проверить,
что приложение использует модуль Silica, который позволяет ускорить запуск приложения.
В строке Icon следует указывать название пакета (оно же имя графического файла для значка).
В строке не требуется указывать абсолютный путь к файлу.
Строка Exec должна содержать команду для запуска.
Значение строки `Name` определяет название приложения на экране приложений ОС Аврора.
Значение не обязательно должно совпадать с названием пакета в установочном пакете и быть уникальным.
Таким образом, на экране приложений ОС Аврора может быть более одного приложения c одним названием.
Для локализации названия приложения используется конструкция Name[<двухбуквенный_код_языка>].
Например, Name[ru] позволяет задать название приложения для русскоязычного интерфейса.
## Управление правами приложения
Начиная с версии 4.0.1 в Аврора OS реализован механизм безопасного исполнения приложений
в песочнице (т.н. Изоляция).
Изоляция в Аврора OS основана на системе Firejail, которая, в свою очередь, основана на SUID,
Linux Namespaces и seccomp-bpf.
Система ограничений прав приложений применима только к приложениям, запускаемым в песочнице.
В дальнейшем изоляция будет применяться ко всем запускаемым приложениям.
Права ("разрешения") необходимые для работы приложения указываются в видоизмененном .desktop-файле,
формат которого указан ниже.
Там же, в явном виде, указывается запуск приложения в секции X-Application.
Для запуска в песочнице Аврора OS приложение должно соответствовать определённым правилам,
которые сейчас будут разобраны.
## Секция X-Application
Рассмотрим требования к формату секции `[X-Application]` desktop-файла на примере.
| Параметр | Описание |
|--------------------|--------------------------------------------------------------------------------|
| `Permissions` | Список идентификаторов требуемых прав со знаком "**;**" в качестве разделителя |
| `OrganizationName` | Название организации-разработчика |
| `ApplicationName` | Имя директории, выделенной для хранения данных приложения |
Разрешения предоставляют доступ к директориям, содержащим данные определённого типа,
интерфейсам D-Bus, определённым типам сокетов и приложений.
В настоящее время приложения должны определять все необходимые разрешения в desktop-файле,
и все они предоставляются в момент запуска.
## Доступные директории
Используйте правильные каталоги данных приложения
OrganizationName и ApplicationName используются для предоставления приложению прав
на запись в директории.
1. $HOME/.local/share/\<Название организации\>/\<Имя приложения\>
2. $HOME/.cache/\<Название организации\>/\<Имя приложения\>
Для доступа к указанным выше каталогам из приложения используйте `Aurora::Application::Paths` из Libauroraapp.
1. Данные приложения — Aurora::Application::Paths::writableLocation(Aurora::Application::Paths::AppDataLocation)
2. Кеш приложения — Aurora::Application::Paths::writableLocation(Aurora::Application::Paths::CacheLocation)
Только эти каталоги могут использоваться для хранения данных приложения.
## Основной объект приложения Qt
Измените основной объект приложения Qt, установив организацию и имя приложения,
чтобы соответствовать объявлению, добавленному в файл рабочего стола.
## Разрешения для приложений [1]
Разрешения, необходимые для использования функциональности.
Функции мобильного устройства:
* Технология Bluetooth: Bluetooth — Подключение и использование оборудования Bluetooth и NFC
* Получение координат: Location — Использование GPS и определение местоположения
* Технология NFC: NFC
Сеть:
* Управление сетевыми подключениями: Internet — Передача данных и подключение к Интернету
* Отображение WEB-контента: WebView
* Передача данных: Internet
Мультимедиа:
* Проигрывание и запись аудио и видео: Audio, Microphone.
* Низкоуровневые функции работы аудио: Audio, Microphone.
* Camera — Съемка фотографий и видео.
* Audio — Воспроизведение звука, изменение конфигурации звука и отображение элементов
управления звуком на экране блокировки.
## Разрешения для приложений [2]
Доступ к системным службам:
* MediaIndexing — Получение списка файлов на устройстве.
Если у вас есть доступ к каталогу данных, вы можете также использовать его.
* SecureStorage — Безопасное хранение данных.
Помимо них, для профилей Extended, Antivirus и MDM также возможно использование разрешения
LogSecurityEvents (для записи в sdjd).
При запросе резрешений учитывается профиль безопасности, выбираемый автоматически в соответствии с сертификатом разработчика. Для каждого профиля предусмотрены дополнительные API, доступ к которым можно получить только с помощью этого профиля. Существует несколько профилей безопасности:
Regular - Базовый профиль для разработки стандартных приложений.
Antivirus - Профиль, наследуемый от Regular, с дополнительными компонентами для разработки антивирусного программного обеспечения.
Extended - Профиль, наследуемый от Regular, с дополнительными компонентами для разработки vpn-клиентов.
Market - Профиль, наследуемый от Regular, с дополнительными компонентами для разработки магазина приложенй.
MDM - Профиль, наследуемый от Extended, с дополнительными компонентами для работы с mdm.
## Разрешения для приложений [3]
Для доступа к дополнительным директориям, которые могут быть доступны нескольким приложениям,
необходимо использовать следующие разрешения:
* RemovableMedia
* UserDirs
* Documents — Доступ к директории документов
* Downloads — Доступ к директории загрузок
* Music — Доступ к директории Music, плейлистам и изображениям обложек
* Pictures — Доступ к директории изображений и эскизам
* PublicDir — Доступ к директории ~/Public
* Videos — Доступ к директории видео и эскизам
UserDirs даёт доступ ко всем директориям, которые предоставляются при использовании следующих разрешений:
Documents, Downloads, Music, Pictures, PublicDir, Videos.
# Тесты по теме «Инструменты разработки»
# Тесты по теме «Структура проекта»
Copyright&nbsp;©&nbsp;2016–2023 ООО&nbsp;«Открытая мобильная платформа».
Copyright&nbsp;©&nbsp;2016–2025 ООО&nbsp;«Открытая мобильная платформа».
Этот документ предоставляется в&nbsp;соответствии
с&nbsp;[Публичной лицензией Creative Commons с&nbsp;указанием авторства версии&nbsp;4.0 Международная](../../LICENSE.CC-BY-4.0.ru.md).
## Multiple choice
Выберите утверждения, справедливые для ОС Аврора.
---
* **Инфраструктура может быть развернута внутри отдельной компании**
* **POSIX-совместимый дистрибутив Linux**
* Использует инфраструктуру Google
* Выполняет байт-код Java, предоставляя нативный API
## Single choice
Какой демон используется в качестве менеджера системы и сервисов ОС Аврора?
---
* **systemd**
* SysV
* Upstart
* init.d
## Multiple choice
На какие устройства можно установить ОС Аврора?
---
* Компьютеры
* Другие портативные устройства
* **Смартфоны**
* **Планшеты**
## Matching
Установите соответствие между элементами и уровнями архитектуры ОС Аврора.
---
| | |
|---------------------------------|---------------------------|
| Базовый уровень | Hardware Adaptation Layer |
| Промежуточный уровень | libhybrus |
| Уровень интерфейса и приложений | Lipstick |
## Multiple choice
Какие архитектуры поддерживает ОС Аврора?
---
* Эльбрус-3
* **x86**
* **ARM**
* powerPC
## Multiple choice
Какие функции предоставляет панель управления?
---
* **Отслеживание статуса устройств**
* **Удаление приложений**
* **Управление обновлениями операционной системы**
* **Удаление данных**
## Single choice
Сколько аккаунтов пользователей может быть на устройстве ОС Аврора?
---
* 1
* 2: администратор и пользователь
* **7: администратор и 6 пользователей**
* Количество не ограничено
## Multiple choice
Какие команды отвечают за установку и сборку пакетов в Build Engine?
---
* sb
* **sb2**
* **mb2**
* mb
## Multiple choice
Что содержит RPM пакет?
Что содержит RPM-пакет?
---
......@@ -107,7 +18,7 @@ Copyright&nbsp;©&nbsp;2016–2023 ООО&nbsp;«Открытая мобильн
## Single choice
Что содержится в .pro файле?
Что содержится в файле CMakeLists.txt?
---
......@@ -119,26 +30,7 @@ Copyright&nbsp;©&nbsp;2016–2023 ООО&nbsp;«Открытая мобильн
## Multiple choice
Что требуется, чтобы разрабатывать приложения для ОС Аврора с помощью Qt?
---
* Qt SDK
* **Аврора SDK**
* **Virtual Box**
## Single choice
Какой комплект архитектуры необходимо выбрать для установки приложения на эмулятор?
---
* **x86**
* ARM
## Multiple choice
Для чего используется qmake?
Для чего используются qmake и CMake?
---
......@@ -149,42 +41,6 @@ Copyright&nbsp;©&nbsp;2016–2023 ООО&nbsp;«Открытая мобильн
## Matching
К каким переменным qmake относятся указанные функции?
---
| | |
|-----------------------------------|----------------|
| Модули Qt, используемые в проекте | `QT` |
| Файлы ресурсов | `RESOURCES` |
| Файлы с исходным кодом на C++ | `SOURCES` |
| Заголовочные файлы C++ | `HEADERS` |
| Файлы перевода | `TRANSLATIONS` |
| Файлы QML | `DISTFILES` |
## Single choice
В переменной `SOURCES` уже хранится значение `app.cpp`.
Выполняется код:
```
SOURCES = main.cpp mainwindow.cpp \
paintwidget.cpp
```
Что будет находиться в переменной `SOURCES`?
---
* Невозможно определить
* Четыре ссылки на cpp-файлы
* Две ссылки на cpp-файлы
* **Три ссылки на cpp-файлы**
* Одна ссылка на cpp-файл
## Matching
К каким компонентам проекта приложения, как правило, относятся указанные функции?
---
......@@ -195,24 +51,13 @@ Copyright&nbsp;©&nbsp;2016–2023 ООО&nbsp;«Открытая мобильн
| Файлы с исходным кодом на C++ | Директория src |
| Параметры запуска приложения | Файл с расширением desktop |
| Файлы с исходным кодом на QML | Директория qml |
| Описание структуры и модулей проекта | Файл с расширением pro |
| Описание структуры и модулей проекта | Файл с расширением pro или CMakeLists.txt |
| Файлы переводов | Директория translations |
| Локальные настройки SDK, которые не нужно никому передавать | Файл с расширением pro.user |
## Single choice
Какие значения может принимать переменная TEMPLATE в .pro файле?
---
* app, desktop, mobile
* app, qt4, qt5
* **app, lib, subdirs**
* app, debug, release
## Multiple choice
Что может содержаться в pro-файле приложения?
Что может содержаться в файле CMakeLists.txt?
---
......@@ -220,25 +65,3 @@ Copyright&nbsp;©&nbsp;2016–2023 ООО&nbsp;«Открытая мобильн
* **Информация о конфигурации**
* **Код подключения библиотек**
* текстовое описание приложения
## Text
Какое разрешение нужно использовать, чтобы получить доступ к стандартной директории с изображениями?
---
Pictures
## Single choice
Какое имя установочного пакета является допустимым?
---
* **ru.auroraos.myapp-0.1-1.armv7hl.rpm**
* ru.auroraos.myapp-0.1-1.arm.rpm
* ru.auroraos.myapp.rpm
* myapp-0.1.armv7hl.rpm
* Upstart
* init.d
Это отличие свёрнуто
Поддерживает Markdown
0% или .
You are about to add 0 people to the discussion. Proceed with caution.
Сначала завершите редактирование этого сообщения!
Пожалуйста, зарегистрируйтесь или чтобы прокомментировать