如何从Action Script 3.0中了解Flash Player版本

时间:2020-03-06 14:36:11  来源:igfitidea点击:

有没有一种方法可以知道使用Action Script 3.0在运行我们的SWF文件的计算机上安装的Flash Player版本?

解决方案

它在flash.system.Capabilities.version中

如果我们是在IDE中进行编程,则以下内容将为我们提供版本

trace(Capabilities.version);

如果我们要构建自定义类,则以下内容应会有所帮助。
确保以下代码进入名为VersionCheck.as的文件中

package
{
    import flash.system.Capabilities;

    public class VersionCheck
    {
        public function VersionCheck():void
        {
            trace(Capabilities.version);
        }
    }
}

希望对我们有所帮助,请始终记住,可以在http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/上在线学习所有AS3语言。

这个例子可能有助于弄清楚我们收到的详细信息,以便我们可以对所获取的有些尴尬的数据中的细节采取行动。

import flash.system.Capabilities;

var versionNumber:String = Capabilities.version;
trace("versionNumber: "+versionNumber);
trace("-----");

// The version number is a list of items divided by ","
var versionArray:Array = versionNumber.split(",");
var length:Number = versionArray.length;
for(var i:Number = 0; i < length; i++) trace("versionArray["+i+"]: "+versionArray[i]);
trace("-----");

// The main version contains the OS type too so we split it in two
// and we'll have the OS type and the major version number separately.
var platformAndVersion:Array = versionArray[0].split(" ");
for(var j:Number = 0; j < 2; j++) trace("platformAndVersion["+j+"]: "+platformAndVersion[j]);
trace("-----");

var majorVersion:Number = parseInt(platformAndVersion[1]);
var minorVersion:Number = parseInt(versionArray[1]);
var buildNumber:Number = parseInt(versionArray[2]);

trace("Platform: "+platformAndVersion[0]);
trace("Major version: "+majorVersion);
trace("Minor version: "+minorVersion);
trace("Build number: "+buildNumber);
trace("-----");

if (majorVersion < 9) trace("Your Flash Player version is older than the current version 9, please update.");
else trace("You are using Flash Player 9 or later.");