编程语言
首页 > 编程语言> > C#-iPhone-未经授权的访问异常

C#-iPhone-未经授权的访问异常

作者:互联网

我确信Xcode开发人员也可以回答这个问题.
我在下面的Xamarin中有我的代码的屏幕截图.

为什么会出现未经授权的访问异常?我应该可以写到documents文件夹吗?

码:

  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”.

我尝试了两条路径,但访问被拒绝.

解决方法:

您无法写入应用程序的分发包路径,该文件夹为只读.我也不确定Xamarin.iOS的“个人”文件夹所指向的位置.

使用此目录,您可以写入该目录:

string path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);

标签:xcode,xamarin,xamarin-ios,iphone,c
来源: https://codeday.me/bug/20191121/2048953.html