使用 Capabilities 類別

Flash Player 9 以及更新的版本,Adobe AIR 1.0 以及更新的版本

Capabilities 類別可讓開發人員判斷應用程式的執行環境。您可以使用 Capabilities 類別的各種不同屬性,針對使用者的系統是否支援輔助功能軟體、使用者作業系統的語言,以及目前所安裝 Flash 執行階段的版本等,找出解決方案。

您可以藉由檢查 Capabilities 類別中的屬性自訂應用程式,而以最佳方式搭配特定使用者的系統來運作。例如,您可以藉由檢查 Capabilities.screenResolutionXCapabilities.screenResolutionY 屬性,判斷使用者系統的顯示解析度,並決定最適當的視訊尺寸。或者,您也可以在嘗試載入外部 MP3 檔案之前,先檢查 Capabilities.hasMP3 屬性,了解使用者的系統是否支援 MP3 播放功能。

下列程式碼會使用規則運算式,剖析用戶端所使用的 Flash 執行階段版本:

var versionString:String = Capabilities.version; 
var pattern:RegExp = /^(\w*) (\d*),(\d*),(\d*),(\d*)$/; 
var result:Object = pattern.exec(versionString); 
if (result != null) 
{ 
    trace("input: " + result.input); 
    trace("platform: " + result[1]); 
    trace("majorVersion: " + result[2]); 
    trace("minorVersion: " + result[3]);     
    trace("buildNumber: " + result[4]); 
    trace("internalBuildNumber: " + result[5]); 
} 
else 
{ 
    trace("Unable to match RegExp."); 
}

如果您要將使用者的系統功能傳送到伺服器端指令碼,以便讓相關的資訊儲存在資料庫中,則可以使用下列 ActionScript 程式碼:

var url:String = "log_visitor.cfm"; 
var request:URLRequest = new URLRequest(url); 
request.method = URLRequestMethod.POST; 
request.data = new URLVariables(Capabilities.serverString); 
var loader:URLLoader = new URLLoader(request);