После запуска Xcode я выбираю Файл / Новый / Проект / macOS / Инструмент командной строки / Далее и запускаю следующий код:
import SecurityFoundation
do {
// Authorize for privileged operations
guard
let authorization = SFAuthorization.authorization() as? SFAuthorization,
let right = NSString(string: kAuthorizationRuleAuthenticateAsAdmin).utf8String
else {
throw CocoaError(.fileWriteNoPermission)
}
try authorization.obtain(withRight: right, flags: [.extendRights, .interactionAllowed])
defer { authorization.invalidateCredentials() }
// Rename MyApp.app into MyApp-Renamed.app
let sourceFileURL = URL(fileURLWithPath: "/Applications/MyApp.app")
let destFileURL = sourceFileURL.deletingLastPathComponent().appendingPathComponent("MyApp-Renamed.app")
try FileManager.default.moveItem(at: sourceFileURL, to: destFileURL)
} catch {
print(error)
}
К сожалению, эта программа не работает:
Error Domain = NSCocoaErrorDomain Code = 513 «Не удалось переместить« MyApp », поскольку у вас нет прав доступа к« Приложениям »." » UserInfo = {NSSourceFilePathErrorKey = / Applications / MyApp.app, NSUserStringVariant = (Переместить), NSDestinationFilePath = / Applications / MyApp-Renamed.app, NSFilePath = / Applications / MyApp.app, NSUnderlyingError = 0x1006173Do = код ошибки 13E В доступе отказано "}}
Приложение не помещено в" песочницу ". Как решить проблему?