Flex_and_Flash

Information about Flex_and_Flash

Published on September 20, 2007

Author: Rajinder

Source: authorstream.com

Content

Flex and Flash:Are Two Heads Better Than One? : Flex and Flash:Are Two Heads Better Than One? Speaker Information : Speaker Information Windows-based Developer - Since ‘85 Senior ColdFusion MX Developer - Since ‘99 Technical Instructor - Since ‘85 Flash Developer - Since ’99 Flex Developer – Since ’05 [email protected] http://therush.wordpress.com Presentation Agenda : Presentation Agenda Advantages of Flash and Flex Flash and Flex Audience Producing the Same Results (kinda) Everything Old is New Again Using LocalConnection Using ExternalInterface Other Considerations AdvantagesFlash : AdvantagesFlash Longevity Thousands of Flash related resources Thousands of community created components and samples Great authoring tool for designers Visual drawing environment AdvantagesFlex : AdvantagesFlex Improved ASv3 architecture Improved components Developer-centric Eclipse based development environment Predefined effects and transitions The Flash Audience : The Flash Audience Timelines Layers Stage Canvas MovieClip Designer The Flex Audience : The Flex Audience Actionscript Tags Data Services Perspectives Source View Developer Working Together : Working Together Producing the Same Results (kinda) : Producing the Same Results (kinda) Version 9 only Version 8 and below In the “Bad Ol’e Days” … : In the “Bad Ol’e Days” … Used getUrl() and fscommand() to communicate from Flash to JavaScript. Used setVariable() to communicate from JavaScript to Flash. fscommand() used VBScript that could conflict with other VBScript on the page and can only pass one string parameter. Everything Old is New Again : Everything Old is New Again LocalConnection ExternalInterface Invoke methods between Flash apps/movies Pass data between Flash apps/movies Using LocalConnectionWhy use LocalConnection? : Using LocalConnectionWhy use LocalConnection? Supported by Flash Player version 6 and above Uses a one-way “Channel” to communicate Supports asynchronous communication Pass multiple variables Using LocalConnectionHow does it work? Step 1 : Using LocalConnectionHow does it work? Step 1 SENDER: Create a new LocalConnection object (1) Use send() method of the localconnection object (2) 1) myLC:LocalConnection = new LocalConnection(); 2) myLC.send(swf1, myName, name_txt.text); Using LocalConnectionHow does it work? Step 2 : Using LocalConnectionHow does it work? Step 2 RECIEVER: Create a new LocalConnection object (1) Prepare to receive commands (2) Define function that will be called by SENDER (3) 1) myLC:LocalConnection = new LocalConnection(); 2) myLC.connect(swf1); 3) myLC.myName = function(param) { reciever_txt.text = param; } Using LocalConnectionHow does it work? : Using LocalConnectionHow does it work? setClock clockStopped Provides direct one-way communication between swfs Using LocalConnectionCan you show us an example? : Using LocalConnectionCan you show us an example? The Resort Tracker 2000 v.5 Using ExteranalInterfaceWhy use ExternalInterface? : Using ExteranalInterfaceWhy use ExternalInterface? Supports synchronous communication Easier to implement Uses JavaScript as a “proxy” between Pass multiple variables Supports multiple data types Note: Only supported by Flash Player version 8 above Using ExternalInterfaceHow does this work? Step 1 : Using ExternalInterfaceHow does this work? Step 1 SEND TO JS: Import ExternalInterface class Use call() method of ExternalInterface object Import flash.external.ExternalInterface ExternalInterface .call(“alert”, “Hello from Flash”); Using ExternalInterfaceHow does this work? Step 2 : Using ExternalInterfaceHow does this work? Step 2 RECIEVE FROM JS: Import ExternalInterface class Use addCallBack() method of ExternalInterface object Import flash.external.ExternalInterface ExternalInterface.addCallBack(“tweenMe”, this, tweenMe); Using ExternalInterfaceHow does this work? Step 3 : Using ExternalInterfaceHow does this work? Step 3 SEND TO FLASH: Get reference to Flash object Use object reference to call Flash function // for IE use myFlash = window[“flashmovie”]; // otherwise use myFlash = document[“flashmovie”]; myFlash.tweenMe(“Hello from JS”) Using ExternalInterfaceHow does this work? : Using ExternalInterfaceHow does this work? setClock clockStopped Using ExternalInterface Got another example? : Using ExternalInterface Got another example? The African Country Guide ver .5 Other Considerations : Other Considerations Flash 8 Security Model Frame Rate Other ConsiderationsFlash 8 Security Model : Other ConsiderationsFlash 8 Security Model By default, local SWFs can no longer contact the Internet, perform HTTP communication, or communicate with local HTML files. SWF and HTML content from non-local URLs may no longer load any content (SWF, HTML, PNG, and so on) from local paths. Use localConnection.allowDomain to permit cross-domain scripting. Use a crossdomain.xml policy file to permit cross-scripting operations. Other ConsiderationsFlash 8 Security Model (cont.) : Other ConsiderationsFlash 8 Security Model (cont.) Use allowScriptAccess to handle communication with Javascript. allowScriptAccess Never: outbound scripting fails Always: outbound scripting succeeds (default) sameDomain: outbound scripting allowed only if swf resides in same domain (default in FP 8+) Other ConsiderationsFrame Rate : Other ConsiderationsFrame Rate Flex’s default frame rate is 24 Adjust your Flash movie accordingly You can reset the default Flex frame rate Open Project Properties >> Flex Compiler Add the following into "Additional compiler arguments:" in single line: -default-frame-rate int Note: The maximum frame rate is limited to machine performance, if this value is set too high the player will simply run at the fastest rate that it can on the given machine. Additional Resources : Additional Resources http://www.adobe.com/cfusion/knowledgebase/index.cfm?id=tn_16243 http://livedocs.macromedia.com/flex/2/langref/flash/net/LocalConnection.html http://www.adobe.com/devnet/flash/articles/external_interface_05.html http://livedocs.macromedia.com/flex/2/langref/flash/external/ExternalInterface.html http://therush.wordpress.com Additional Resources : Additional Resources Flash / JavaScript Integration Kit (Beta) http://weblogs.macromedia.com/flashjavascript/ Flex-Ajax Bridge http://labs.adobe.com/wiki/index.php/Flex_Framework:FABridge

Related presentations


Other presentations created by Rajinder

Fractals Grammar
14. 09. 2007
0 views

Fractals Grammar

Fractals overview
14. 09. 2007
0 views

Fractals overview

Face to Face vs Online Teaching
18. 09. 2007
0 views

Face to Face vs Online Teaching

Introduction  to Hacking
21. 09. 2007
0 views

Introduction to Hacking

TT-San-Hacking-Windows-CE
25. 09. 2007
0 views

TT-San-Hacking-Windows-CE

Wisdom
01. 10. 2007
0 views

Wisdom

A To Z of Life
03. 10. 2007
0 views

A To Z of Life

Fractals
14. 09. 2007
0 views

Fractals

Miss ARAB 2007
23. 08. 2007
0 views

Miss ARAB 2007

Brain teasers
08. 04. 2007
0 views

Brain teasers