Это вопрос, который я уверен, разработчики Xcode также могут ответить. У меня есть скриншот моего кода ниже в Xamarin.iPhone 4S - исключение UnAuthorized Access
Почему я получаю исключение несанкционированного доступа? Я должен был бы правильно записать в папку с документами?
var webClient = new WebClient();
//var documentsFolder = Environment.GetFolderPath (Environment.SpecialFolder.Personal); // iOS 7 and earlier
var documentsFolder = NSBundle.MainBundle.BundlePath;
var fileNameAndPath = Path.Combine (documentsFolder, "verses.xml");
if(!File.Exists(documentsFolder)){
Directory.CreateDirectory(documentsFolder);
if(!File.Exists(fileNameAndPath)){
//File.SetAttributes(fileNameAndPath, FileAttributes.Normal);
File.Create(fileNameAndPath);
//Throws exception here.
}
}
И ОШИБКИ:
Доступ к пути "/var/mobile/Applications/1F95D694-BBA5-4FB3-AE6C-0C2CDD9DEDD8/comexample.app/verses.xml" Отказано
Доступ к пути '/private/var/mobile/Applications/1F95D694-BBA5-4FB3-AE6C-0C2CDD9DEDD8/Documents/verses.xml' отклоняется.
Я пробовал оба пути, и я получаю отказ в доступе.
Я бег IOS 7.1.2 – james0200101
Независимо от того, какой версии прошивки вы работаете , вы должны использовать 'NSSearchPathForDirectoriesInDomains'. Я не знаю, было ли когда-либо целесообразным создание пути к документам без этой функции. (Доступно с iOS 2.0) –
Я бы попробовал функцию в любом случае. Даже если это все еще дает вам проблему, по крайней мере, вы будете использовать рекомендуемый подход. –