#macos #qt #resources #app-bundle
#macos #qt #Ресурсы #пакет приложений
Вопрос:
я немного смущен наиболее правильным способом управления ресурсами (файлами и папками), необходимыми приложению.
Я разъясняю: У меня есть исполняемый файл (разрабатываемый на mac osx с qt), и у меня есть фиксированная иерархия папок, где хранится множество файлов конфигурации. Эти файлы могут быть отредактированы, добавлены или удалены вручную. Теперь в Windows или Linux я бы просто легко получил эти файлы, просто обратившись к родительским папкам, и эти папки свободно доступны любому файловому менеджеру ОС.
Но в OSX мой исполняемый файл находится внутри .Пакет приложений.
Тогда я должен иметь возможность извлекать ресурсы из пакета (даже если управление ресурсами в qt creator отстой), но пользователь также должен иметь возможность открывать и редактировать пакет приложений, что вообще невозможно … и я не хочу ни развертывать какой-либо менеджер ресурсов, ни помещать конфигурации в (например.) домашняя подпапка (я хочу сохранить все вместе).
Есть ли какое-либо решение? Спасибо!
Ответ №1:
В терминах OS X ваши конфигурационные файлы действительно должны находиться в службе поддержки приложений, пользователь может получить к ним доступ там. Однако они также могут получить к ним доступ из пакета приложений, если вы поместите их туда, щелкнув правой кнопкой мыши и выбрав Просмотр содержимого пакета, затем вы можете изменить файлы и сохранить их.
Комментарии:
1. да, конечно, я знаю о просмотре содержимого пакета, но это не совсем удобная для пользователя задача: / я посмотрю в службу поддержки приложений. Спасибо.
2. Вероятно, это так же удобно для пользователя, как хранить их в службе поддержки приложений, в зависимости от сложности конфигураций, возможно, стоит иметь минимальный способ редактировать их в приложении, если вы пытаетесь сделать его удобным для пользователя и сохранить конфигурации вместе с двоичным файлом.
3. вероятно, я в конечном итоге это сделаю. однако я имел в виду удобство для пользователя в Linux … лучше сменить парадигму.