Since its inception, Flash has been intimately tied to web browsers. Granted, Flash can create Projectors that use the Standalone Player to play SWF files, but most Flash content is viewed through web browsers, courtesy of the ubiquitous Flash Player browser plugin (for Internet Explorer on Windows, it is an ActiveX control).
Ironically, part of the world's love-hate relationship with Flash is based on misconceptions. Many web developers and users don't realize the extent to which Flash works with browsers. In this chapter, we'll see how to integrate Flash with standard browser conventions, such as the Back button [Hack #94], and search engines like Google.
This chapter also discusses a unique way to check for the Flash Player browser plugin [Hack #87] . If the Flash Player is installed, it can periodically check for Player updates on the macromedia.com site. As described in the Macromedia Flex documentation Managing Flash Player Auto-update (http://livedocs.macromedia.com/flex/1/flex_docs/wwhelp/wwhimpl/common/html/wwhelp.htm?context=Flex_Documentation&file=38_dep42.htm#wp154069) the auto-update settings can be configured via an mms.cfg file in the user's home directory or via the user settings as described next.
Security and privacy are important to Flash's acceptance as a distribution platform. Most developers are aware of the Flash context menu accessed using right-click (Windows) or -click (Macintosh). The most important option on this menu is Settings, which opens the Macromedia Flash Player Settings dialog box. This dialog box has tabs that allow the user to manage settings for Privacy, Local Storage, Microphone, and Camera access. However, few developers and even fewer users realize that additional Flash Player settings are available only via Macromedia's web site. Users can access the Settings Manager (http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager.html) using the Advanced button on the Privacy tab of the Settings dialog box. Once at Macromedia's site, the user can configure additional settings regarding privacy, storage, security, and update notifications.
As has been the case for many years, browser standards and compatibility continue to fluctuate as new versions of various browsers are released for the major operating systems. Legal influences often trump technical ones, however. A company called EOLAS (Embedded Objects Linked Across Systems) has several patents covering playing content in a browser. You may have heard of the EOLAS patent case in which Microsoft was sued to prevent it from seamlessly launching the Flash Player ActiveX control in Internet Explorer for Windows. At the time of this writing, Microsoft has won a preliminary ruling to invalidate the patent, but the litigation is still pending. See http://www.eolas.com/news.html for the latest news on this issue from EOLAS. Search http://www.microsoft.com for the word "EOLAS" to find any implications of recent rulings to Internet Explorer. See http://www.macromedia.com/devnet/activecontent for any issues raised for Flash and other rich media developers. Any late-breaking news will be updated on this book's site, as noted in the Preface.
Of course, the Flash Player is not just for web browsers. There is also the Flash player for PocketPC, Flash Lite for cell phones, and hardware-specific versions of the Flash Player for a number of other devices (see http://www.macromedia.com/devnet/devices). Note that the version of the Flash Player supported by most mobile or standalone devices will lag behind the latest version of the Flash Player for desktop PC web browsers. Most non-browser-based versions of the Flash Player support either Flash 4, 5, or 6 features, whereas the latest Flash Player for Macintosh and Windows browsers is Flash Player 7.
The Flash authoring tool is not open source, but the SWF format is public. Third parties can license the Flash SWF file format for free (see http://www.openswf.org and http://www.macromedia.com/software/flash/open/licensing for more details). Not surprisingly, a number of third-party tools play SWF files in nonstandard environments or produce SWF output without requiring the Flash authoring tool [Hack #29] .