2011-09-29 7 views
0

これは私にナットを駆動している...私の研究に基づいて、私はそうのようなSWFオブジェクトに直接のQueryStringパラメータを渡すことができる必要があります:私は次のことを試してみましたMXML oncreationcomplete方法でquerystringの値をswfに渡すには?

http://localhost:3000/SomeFlash/bin-debug/myFlash.swf?userId=827419

// oncreationcomplete method 
    var userIdTest1:String = FlexGlobals.topLevelApplication.parameters[0]; 
    var userIdTest2:String = Application.application.parameters.userId; 
    var userIdTest3:String = this.parameters.userId; 


    // External Interface 
    ExternalInterface.addCallback("OnGameLoad", ClientParams); 


// callback method 
    protected function ClientParams(userId:String):void 
    { 
     this.userId = userId;   
    }  

ソース http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf626ae-7feb.html

私は、Flex 4.5.1コンパイラでFlashbuilder 4.5を使用しています。私はhtmlラッパーとmxmlを使用していますが、私はswfに直接URLを介してパラメータを渡そうとしています。

答えて

1

多くのテストといくつかの愚かな幸運の後、私は次のことがクエリーストリングパラメータを得るために働くことがわかりました。 oncreationcomplete方法

this.userId = this.parameters.userId; 
2

swfを直接起動する場合はExternalInterfaceを使用できません。

同様に、私はqueryStringが利用できないと考えています。

代わりに、HTMLページをホストしてみてください。 (すなわち、http://localhost:3000/SomeFlash/bin-debug/myFlash.html?userId=827419

+0

良いアイデアで

//、ホストされたHTMLページを持つことが一般的に常に良い考えです。 SWFをブラウザで直接呼び出す理由を、友だちへの高速配布以外の目的で考えると、プロジェクトを試してみることはできません。 – bigp

+0

swfはswfsを直接使用する3次元アプリケーションで使用されるため、htmlラッパーは使用できません – chobo

関連する問題