Доступ к папке User Library в приложении для Mac

Я пишу простое приложение панели настроек, которое не будет находиться на MAS и не нуждается в песочнице.

Я пытаюсь получить доступ к их каталогу пользователя/библиотеки или, по крайней мере, найти путь.

Я могу сделать это следующим образом:

NSString *filePath = @"/Users/USERNAME/Library/";

если я знаю их ИМЯ ПОЛЬЗОВАТЕЛЯ, которое я не знаю, как получить? Или, может быть, есть лучший способ?


person Kenneth    schedule 30.07.2014    source источник
comment
Рассмотрите возможность использования NSUserDefaults, если можете... В документах   -  person ahruss    schedule 30.07.2014
comment
Мне нужен доступ к библиотеке, чтобы я мог изменять pLists, которые находятся в этом каталоге (в частности, пользовательские значения по умолчанию для того, какое приложение открывает что).   -  person Kenneth    schedule 30.07.2014


Ответы (1)


Вы можете получить имя пользователя, вызвав функцию NSUserName().

UPD: Неправильно понял вопрос. Пожалуйста, используйте эту функцию

// Obtain the user's real home directory
// Normally the sandbox returns the app container's user home folder, not the real one
+ (NSString *)homeDirectory {
    struct passwd *pw = getpwuid(getuid());
    return [NSString stringWithUTF8String:pw->pw_dir];
}
person dimazava    schedule 09.10.2017