0

我正在使用 URLStream 从硬盘加载文件(我想继续使用 URLStream 这样做)。该文件位于“app-storage:/myfolder/myFile.zip”

所以我用

var f:File = new File("app-storage:/myfolder/myFile.zip");
myStream.load(new URLRequest(f.nativePath));

在 Windows 上,这似乎可以正常工作 - 但在 OS X 上,URLStream 会发送带有以下消息的 SecurityErrorEvent.SECURITY_ERROR:

Error #2032: Stream Error. URL: app:/Users/myUserName/Library/Preferences/MyAppName/Local%20Store/myfolder/myFile.zip

有人可以解释一下为什么这适用于 Windows 但不适用于 OS X 以及如何解决这个问题?

4

1 回答 1

0

好老的,模棱两可的错误2032!

您可能想尝试:

var f:File = new File(File.applicationStorageDirectory + "/myFolder/myFile.zip");

编辑

我最初的评论是使用该File.applicationStorageDirectory属性,我仍然认为这是一个好主意。但看起来该属性归结为您正在使用的相同字符串......所以问题可能是存储目录的位置已更改并且您要查找的文件仍在原始位置?请参阅下面的链接。

结束编辑

请注意此处有关仅适用于 Mac OSX 的 Air 3.3 中对此路径所做的更改的评论。即使这不能解决您的问题,如果路径更改或某些其他设备/操作系统需要不同的“模式”,使用此属性应该可以保护您的代码免受未来问题的影响。

于 2012-08-08T17:25:24.740 回答