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プロパティを使用することでしたが、今でもそれは良い考えだと思います. しかし、そのプロパティは、使用しているのと同じ文字列に要約されるようです...おそらく問題は、ストレージディレクトリの場所が変更され、探しているファイルがまだ元の場所にあることですか? 以下のリンクを参照してください。

編集を終了

Air 3.3 for Mac OSX のみでこのパスに加えられた変更について、ここにコメントがあることに注意してください。これで問題が解決しない場合でも、このプロパティを使用すると、パスが変更された場合や、他のデバイス/OS に別の「スキーマ」が必要な場合に、コードを将来の問題から保護できます。

于 2012-08-08T17:25:24.740 に答える