The following table summarizes the differences when creating your Flash Platform application as an iFrame or FBML Facebook application. The two most significant differences are the ability to control the embedding of a Flash object and the ability to access scripts.
| Feature |
iFrame |
FBML |
|---|---|---|
| Flash Player version and detection code |
You control the embedding. You write (or include) the JavaScript detection code and the selection of the required Flash Player version. Typically, SWFObject is used. |
You have no control over the embedding. Currently, the |
| Script access |
Can be denied by setting |
Use fb:fbjs-bridge for limited JavaScript access on FBML pages. |
| Fullscreen mode |
Supported. |
Not supported. |
| Simple integration of FBML tags |
Supported through use of XFBML. |
Supported. This allows you to simply integrate
Facebook components and dialog boxes. You can also embed Flash objects in the |
| Application server |
Not required. Your SWF container page could just be an
HTML page that uses JavaScript to parse and pass the GET URL session
variables passed with the page request to the SWF by setting the |
Not required. Your SWF can be a static HTML or FBML page. |
| Making Facebook API calls from Flash |
Supported. |
Supported. |
| Controlling URL history |
Supported through iFrame URL. |
Supported by browser. |

This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License
This content was authored by Facebook.