Документация
ОС Аврора 4.0.1

Данные пользователя

Начиная с ОС Аврора версии 4.0.1 каждое приложение запускается в изолированном окружении, которое ограничивает доступ к API и данным. Директории, которые доступны приложениям для чтения и записи, определяются как названием установочного пакета, так и разрешениями, перечисленными в .desktop-файле.

Пути к директориям рекомендуется указывать с помощью класса QStandardPaths или QML-типа StandardPaths. Такой подход позволяет избежать привязок к конкретному приложению или параметрам окружения.

Если приложение не использует libsailfishapp, в функции main() нужно соответствующим образом сконфигурировать экземпляр класса QGuiApplication, чтобы пути были настроены корректно:

QScopedPointer<QGuiApplication> application(SailfishApp::application(argc, argv));
application->setOrganizationName(QStringLiteral("{доменное_имя}"));
application->setApplicationName(QStringLiteral("{название_приложения}"));

{доменное_имя} и {название_приложения} должны соответствовать тем, которые указаны в .desktop-файле.

По умолчанию каждое приложение имеет доступ на чтение и запись только к тем директориям, которые ему соответствуют, а также общей директории всех приложений одной организации:

Описание Константа QStandardPaths Свойство StandardPaths Путь
Настройки приложения для пользователя AppConfigLocation ~/.config/{доменное_имя}/{название_приложения}
Кэш приложения (данные, удаление которых не влияет на настройки приложения) для пользователя CacheLocation cache ~/.cache/{доменное_имя}/{название_приложения}
Данные приложения для пользователя AppDataLocation data ~/.local/share/{доменное_имя}/{название_приложения}
Данные приложения, общие для всех пользователей устройства (чтение/запись) /srv/shared/{доменное_имя}/{название_приложения}
Общие данные всех приложений организации (чтение/запись) /srv/shared/{доменное_имя}/common
Директория для хранения данных между всеми приложениями одного вендора с возможностью распаковки данных при установке пакета (только чтение) /usr/share/common/{доменное_имя}/{название_приложения}

Примечание: Директория /srv/shared/{доменное_имя}/{название_приложения} формируется при запуске приложения на устройстве и доступна, пока активен хотя бы один экземпляр приложения.

Директория /srv/shared/{доменное_имя} формируется при запуске любого приложения организации и доступна, пока активен хотя бы один экземпляр любого приложения организации.

Для доступа к общим директориям пользователя необходимо указать разрешения в .desktop-файле:

Описание Константа QStandardPaths Свойство StandardPaths Путь Разрешение
Документы пользователя DocumentsLocation documents ~/Documents Documents или UserDirs
Загрузки пользователя DownloadLocation downloads ~/Downloads Downloads или UserDirs
Музыка и другие аудиофайлы пользователя MusicLocation music ~/Music Music или UserDirs
Фотографии и другие изображения пользователя PicturesLocation pictures ~/Pictures Pictures или UserDirs
Общие данные приложений пользователя GenericDataLocation genericData ~/Public PublicDir или UserDirs
Фильмы и другие видео пользователя MoviesLocation videos ~/Videos Videos или UserDirs
Подключаемые накопители (SD-карты и т. п.) RemovableMedia

Примечание: Несмотря на то, что разрешение UserDirs может использоваться для доступа ко всем перечисленным директориям пользователя, не рекомендуется его указывать, если нет необходимости работать со всеми директориями.

Мы используем cookies для персонализации сайта и его более удобного использования. Вы можете запретить cookies в настройках браузера.

Пожалуйста ознакомьтесь с политикой использования cookies.