01.04
Browser plugin version detection is a bit of a problem because of inconsistencies in the way different plugin developers name, describe and version their plugins.
Buy using JavaScript a web site developer can test for the existance of a plugin and get the plugin description string. The problem is that it is up to the plugin developer how to name the plugin, how to describe it and if the name or description should contain a version number and where the version number occurs.
Here is a list of plugins I have found to install on a Mac. You can see if I’m trying to detect a version of a plugin then I have to look in a different place for the version (if it exists) for each plugin.
| Plugin | String | Comment |
|---|---|---|
| Google Earth Plug-in | The Google Earth Plugin allows you to view 3D imagery and terrain in your web browser. | No version number. |
| Shockwave Flash | Shockwave Flash 10.1 d51 | No second full stop and the letter d. |
| RealPlayer Plugin.plugin | RealPlayer Plugin | No version number. |
| Shockwave for Director | Adobe Shockwave for Director Netscape plug-in, version 11.5.2 | |
| Unity Player | Unity Web Player lets you experience dazzling interactive 3D right in your browser. For more information, visit Unity . | No version number. |
| Gears 0.5.33.0 | Gears for Safari | 4 numbers in the version number. |
| O3D Plugin | O3D Plugin version:0.1.42.3 | 4 numbers in the version number. |
| QuickTime Plug-in 7.6.3 | The QuickTime Plugin allows you to view a wide variety of multimedia content in web pages. For more information, visit the QuickTime Web site. | |
| VLC Multimedia Plug-in | VLC media player – version 1.0.3 Goldeneye – (c) 1996-2009 the VideoLAN team http://www.videolan.org |
|
| Flip4Mac Windows Media Web Plugin 2.3 | The Flip4Mac WMV Plugin allows you to view Windows Media content using QuickTime. | |
| ShiVa3D Plugin | ShiVa3D Plugin 1,8,0,0 for 3D real-time applications made with ShiVa Editor. | 4 numbers plus commas in the version number. |
| Quartz Composer Plug-In | Web Kit plug-in that renders Quartz compositions. | No version number. |
| Silverlight Plug-In | 3.0.40818.0 | 4 numbers in the version number. |
| revWeb | revWeb revlet player | No version number. |
So if the strings got changed to the following format…
Version;URL;Vendor;Description
Where Version = major.minor.revision
| Plugin | String |
|---|---|
| Google Earth | 5.1.0;http://code.google.com/apis/earth/;Google;Embed Google Earth maps and animation in a web page. |
| Shockwave Flash | 10.1.51;http://get.adobe.com/flashplayer/;Adobe;Embed Flash movies and video. |
| RealPlayer | 11.1.0;http://www.real.com/realplayer/;RealNetworks;Plays Real media files. |
| Shockwave for Director | 11.5.2;http://get.adobe.com/shockwave/;Adobe;Embed movies created with Adobe Director. |
| Unity Player | 2.6.7;http://unity3d.com/webplayer/;Unity;Unity Web Player lets you experience dazzling interactive 3D right in your browser. For more information, visit Unity . |
| Google Gears | 0.5.33;http://gears.google.com/;Google;Adds functionality to you web browser. |
| Google O3D | 0.1.42;http://code.google.com/apis/o3d/;Google;Embed O3D environments. |
| QuickTime | 7.6.3;http://www.apple.com/quicktime/download/;Apple;Allows you to view a wide variety of multimedia content in web pages. For more information, visit the QuickTime Web site. |
| VLC Multimedia | 1.0.3;http://www.videolan.org/vlc/;Videolan;VLC media player – (c) 1996-2009 the VideoLAN team http://www.videolan.org |
| Flip4Mac Windows Media | 2.3.0;http://dynamic.telestream.net/downloads/download-flip4macwmv.htm;Telestream;The Flip4Mac WMV Plugin allows you to view Windows Media content using QuickTime. |
| ShiVa3D | 1.8.0;http://www.stonetrip.com/3d-players.html;ShiVa3D;For 3D real-time applications made with ShiVa Editor. |
| Quartz Composer | 1.2.0;;Apple;Web Kit plug-in that renders Quartz compositions. |
| Silverlight | 3.0.40818;http://silverlight.net/;Microsoft;Embed Silverlight applications. |
| revWeb | 4.0.0;http://revweb.runrev.com/;RunRev;revWeb revlet player. |
Then detecting versions of plugins and directing a user to a plugin download page would be much easier.