2012-02-19 8 views
1

私のAIRアプリケーションにリモートイメージをロードしようとしています。次のエラー:SecurityDomain 'http://domain.com/app/widget/twitter.png'は互換性のないコンテキスト 'app:/App.swf'にアクセスしようとしました

*** Security Sandbox Violation *** 
SecurityDomain 'http://[------].com/app/widget/twitter.png' tried to access incompatible context 'app:/App.swf' 

*ドメイン名は、だから、基本的に遠隔画像がアプリケーションにアクセスしようとしていることを言っている

を編集さ?リモートドメインを信頼できるものとして追加するにはどうすればよいですか?

私はSecurity.allowDomain('www.[------].com')を試してみましたが、次のエラーを得た:

SecurityError: Error #3207: Application-sandbox content cannot access this feature. 
at flash.system::Security$/allowDomain() 

答えて

2

あなたは、Webサーバーのルート上のcrossdomain.xmlファイルを置くために、リモートドメインへのアクセスを持っていますか?

もしそうでなければ、イメージをバイト配列(URLLoaderを参照)としてロードし、メモリ内のイメージ(SWFLoader.loadBytesを参照)に変換して、サンドボックス問題を回避できます。

+0

私はアクセスしています。しかし、crossdomain.xmlと同等のものを必要とするアプリケーションではありませんか? – Straseus

+0

フラッシュセキュリティサンドボックスには多くの落とし穴がありますが、私はAIRサンドボックス(これは少し厳しい傾向にあります)で100%最新ではないことを認めなければなりません。 TBH私はちょうどそれを行って、それが動作するかどうかを見てみましょう。それが動作しない場合は、私は私の答えで言及し、バイト配列としてファイルをロードすると思います。 –

+0

リッチーが正しいです。クロスドメインを必要とするアプリケーションではなく、アプリがダウンロードしようとするドメインです。クロスドメインをドメインのトップレベルに置く必要があります。 –

関連する問題