Использование класса Capabilities

Класс Capabilities позволяет разработчикам определить среду, в которой выполняется SWF-файл. С помощью различных свойства класса Capabilities можно определить разрешение экрана пользователя, наличие поддержки ПО для обеспечения специальных возможностей, а также узнать язык операционной системы и текущую установленную версию Flash Player или AIR.

Проверяя свойства класса Capabilities, можно настроить приложение для оптимальной работы в среде конкретного пользователя. Например, с помощью свойств Capabilities.screenResolutionX и Capabilities.screenResolutionY можно определить разрешение дисплея в системе пользователя и указать наиболее подходящий формат для видео. А еще можно задать свойство Capabilities.hasMP3, чтобы узнать, поддерживает ли система пользователя воспроизведение mp3, прежде чем загружать внешний mp3-файл.

Следующий код использует регулярное выражение для определения версии Flash Player в клиентской системе.

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);