Класс Capabilities позволяет разработчикам определить среду, в которой выполняется приложение. С помощью различных свойства класса Capabilities можно определить разрешение пользовательской системы, наличие поддержки ПО для обеспечения специальных возможностей, а также узнать язык операционной системы и текущую установленную версию среды выполнения Flash.
Проверяя свойства класса Capabilities, можно настроить приложение для оптимальной работы в среде конкретного пользователя. Например, с помощью свойств
Capabilities.screenResolutionX
и
Capabilities.screenResolutionY
можно определить разрешение дисплея в системе пользователя и указать наиболее подходящий формат для видео. А еще можно задать свойство
Capabilities.hasMP3
, чтобы узнать, поддерживает ли система пользователя воспроизведение mp3, прежде чем загружать внешний 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);