Xamarin iOS 8捆绑资源 - 拒绝访问路径

sun*_*ant 3 xamarin.ios xamarin

我有一个Xamarin iOS项目,其中包含一个我已标记为捆绑资源的文件.该文件在项目中配置如下:

<BundleResource Include="my\folder\file.xyz" />
Run Code Online (Sandbox Code Playgroud)

我一直在使用以下内容作为流访问该文件:

string ext = Path.GetExtension ("file.xyz");
string filenameNoExt = filename.Substring (0, filename.Length - ext.Length);
string path = Path.Combine ("my/folder", filenameNoExt);
var resourcePathname = NSBundle.MainBundle.PathForResource (path, ext.Substring (1, ext.Length - 1));
var fStream = new FileStream (resourcePathname, FileMode.Open);
Run Code Online (Sandbox Code Playgroud)

它不适用于iOS 8.它在iOS 8之前没有问题.

我收到以下错误:

Access to the path "/private/var/mobile/Containers/Bundle/Application/0E6DD32F-4E6F-4E54-B47E-A91060097E16/myapp.app/my/folder/file.xyz" is denied.
Run Code Online (Sandbox Code Playgroud)

究竟,我需要更改什么才能让它在iOS 8中运行?

Kru*_*lur 6

FileAccess.Read在创建流时也提供.否则它将抛出一个UnauthorizedAccessException只读文件.