0

Photoshop UIプロジェクトに取り組んでおり、Flash Builderも約3週間使用していますが、通信の問題の解決策が見つかりません。この問題に関する詳細は次のとおりです。あなたが私を助けることに興味があるなら、ありがとう。

  • UIのメインフレームはExtendscriptです

  • ローカルJPGファイルを動的にロードする必要があるas3swfがあります。これは、Flashの「ローカルファイルのみにアクセス」の状況であると思います。

  • 同じSWFがExtendscriptと通信する必要があるため、SWFLoaderを介して動的にFLEXアプリにロードし、「myFlexParent」オブジェクトを介していくつかの変数をFLEXに渡し、いくつかの関数をトリガーします。

  • FlexはFlashとExtendscriptの間のブリッジであるため、Externalinterface.callまたはCSXSInterface.instance.evalScript()を介して変数と関数をExtendscriptJSXコードに渡します。

これが私がSTUCKだところです。ExternalInterface呼び出しまたはCSXSInterface.instance.evalScript()はネットワーク操作として脅威にさらされており、フレックスでコンパイルオプション「-use-network=false」を設定すると機能しないと思います。そうしないと、ローカルJPGファイルをロードできません。

UIを拡張機能に変換し、簡単にインストールできるようにするため、設定マネージャーで場所を追加しても機能しません。

FLEXとExtendScriptの間に双方向通信を確立する方法を見つけようとしていると思います。これはFlashPlayerによってローカル通信として解釈されます。これは実際にはそうです。

少しでも情報をいただければ幸いです。ありがとう。

4

1 に答える 1

0

ExternalInterface はネットワーク呼び出しと見なされ、-use-network=false を設定すると、これらの呼び出しが中断されます。これは、セキュリティ サンドボックスによるものです。許可された場合、Flash アプリを単純な AJAX と組み合わせて使用​​することで、非ネットワーク アプリをネットワーク アプリに簡単に変換できます。

アドビのドキュメントは次のように述べています。

この通信は、allowScriptAccess および allowNetworking プロパティが定義するドメインベースのセキュリティ制限に依存しています。SWF ファイルのラッパーで allowScriptAccess および allowNetworking プロパティの値を設定します。

参考リンク:

http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf6167e-7fff.html#WS2db454920e96a9e51e63e3d11c0bf6167e-7ff5

ネットワークとローカル ファイルの両方の操作を実行できるようになるため、アプリを AIR アプリに変更することを検討してください (ユーザーがアプリケーションをインストールするため、セキュリティ モデルが異なります)。

于 2012-06-08T15:30:34.900 に答える