I was going through all the different properties and methods of the Capabilities Class and figured others might benefit from taking a look at this code. All I did was look into each one a little and use some of the definitions ALREADY supplied. However, it was very insightful to have it all in front of me at once.
Has anyone used these before? Which ones? What problems did you run into? What should I know before using them?
Throw this into a new movie:
ActionScript Code:
// Camera and Microphone check
var userCamMic:Boolean = System.capabilities.avHardwareDisable;
trace("YOUR CAMERA AND MICROPHONE ARE ENABLED:");
trace(userCamMic);
// Flash player supports communication to Accessibility Aids
var userAccess:Boolean = System.capabilities.hasAccessibility;
trace("YOUR FLASH PLAYER SUPPORTS COMMUNICATION TO ACCESSIBILITY AIDS:");
trace(userAccess);
// Checking to see if you have audio
var userAudio:Boolean = System.capabilities.hasAudio;
trace("YOUR SYSTEM HAS AUDIO:");
trace(userAudio);
// Checking to see if you have an audio encoder for streaming
var userAudioEnc:Boolean = System.capabilities.hasAudioEncoder;
trace("YOUR SYSTEM HAS AN AUDIO ENCODER, THUS ALLOWING STREAMING:");
trace(userAudioEnc);
// Checking to see if your system has embedded video capabilities
var userEmbVideo:Boolean = System.capabilities.hasEmbeddedVideo;
trace("YOUR SYSTEM ALLOWS FOR EMBEDDED VIDEO:");
trace(userEmbVideo);
// Checking to see if your system has an MP3 decoder
var userMP3:Boolean = System.capabilities.hasMP3;
trace("YOUR SYSTEM HAS AN MP3 DECODER:");
trace(userMP3);
// Checking to see if your system supports printing
var userPrint:Boolean = System.capabilities.hasPrinting;
trace("YOUR SYSTEM SUPPORTS PRINTING:");
trace(userPrint);
// Checking to see if your system supports development of screen broadcast
// applications to be run through Flash Communication Server
var userScrnBrd:Boolean = System.capabilities.hasScreenBroadcast;
trace("YOUR SYSTEM SUPPORTS DEVELOPMENT OF SCREEN BROADCAST APPLICATIONS TO BE RUN
THROUGH FLASH COMMUNICATION SERVER:");
trace(userScrnBrd);
// Checking to see if your system supports playback of screen broadcast
// applications that are running from Flash Communication Server
var userScrnPlay:Boolean = System.capabilities.hasScreenPlayback;
trace("YOUR SYSTEM SUPPORTS PLAYBACK OF SCREEN BROADCAST APPLICATIONS THAT ARE
RUNNING FROM FLASH COMMUNICATION SERVER:");
trace(userScrnPlay);
// Checking to see if your system can play streaming audio
var userStrmAud:Boolean = System.capabilities.hasStreamingAudio;
trace("YOUR SYSTEM CAN PLAY STREAMING AUDIO:");
trace(userStrmAud);
// Checking to see if your system can play streaming video
var userStrmVid:Boolean = System.capabilities.hasStreamingVideo;
trace("YOUR SYSTEM CAN PLAY STREAMING VIDEO:");
trace(userStrmVid);
// Checking to see if your system can encode streaming video
var userVidEnc:Boolean = System.capabilities.hasVideoEncoder;
trace("YOUR SYSTEM CAN ENCODE STREAMING VIDEO:");
trace(userVidEnc);
// Checking to see if your player is officially released (false) or a debugging version (true)
var userDebug:Boolean = System.capabilities.isDebugger;
trace("YOUR PLAYER IS A DEBUGGING VERSION:");
trace(userDebug);
// What language is your player running
var userLang:String = System.capabilities.language;
trace("YOUR PLAYER IS RUNNING ON THIS LANGUAGE (see Actionscript 'Reference' for language list.
Example: 'en' is English):");
trace(userLang);
// Checking to see if player is attempting to read anything from hard disk
var userLocFile:Boolean = System.capabilities.localFileReadDisable;
trace("YOUR PLAYER IS ATTEMPTING TO READ FROM YOUR HARD DISK:");
trace(userLocFile);
// Checking to see the manufacturer of your Flash player
var userManu:String = System.capabilities.manufacturer;
trace("YOUR FLASH PLAYER IS MANUFACTURED BY:");
trace(userManu);
// Checking to see what operating system user is running
var userOS:String = System.capabilities.os;
trace("YOUR OPERATING SYSTEM IS:");
trace(userOS);
// Checking the pixel aspect ratio of user screen
var userPAR:Number = System.capabilities.pixelAspectRatio;
trace("THE PIXEL ASPECT RATIO OF YOUR SCREEN IS:");
trace(userPAR);
// Checking to see what player the user system is using
var userPlayType:String = System.capabilities.playerType;
trace("THE PLAYER YOUR SYSTEM IS RUNNING IS:");
trace(userPlayType);
// Checking to see what color user screen is running
var userScrnCol:String = System.capabilities.screenColor;
trace("YOUR SYSTEM IS RUNNING THIS COLOR (color, gray, bw):");
trace(userScrnCol);
// Checking to see what the users screen DPI is
var userDPI:Number = System.capabilities.screenDPI;
trace("YOUR SCREEN DPI (DOTS PER INCH) IS:");
trace(userDPI);
// User screen resolution
var userScreenX:Number = System.capabilities.screenResolutionX;
var userScreenY:Number = System.capabilities.screenResolutionY;
trace("YOUR MONITOR RESOLUTION IS:");
trace(userScreenX+" x "+userScreenY);
// Creating URL code for users system capabilites
var userServStr:String = System.capabilities.serverString;
trace("THE URL CODE FOR YOUR USER SYSTEM CAPABILITIES IS:");
trace(userServStr);
// Checking to see what Flash player version user is running
var userVersion:String = System.capabilities.version;
trace("YOUR FLASH PLAYER VERSION IS:");
trace(userVersion);
// Checking to see if user has disabled windowless mode
var userWinDis:Boolean = System.capabilities.windowlessDisable;
trace("YOU HAVE DISABLED WINDOWLESS MODE:");
trace(userWinDis);
// Checking to super domain or exact domain is set
var userExacSet:Boolean = System.exactSettings;
trace("YOU HAVE SUPER DOMAIN SETTINGS:");
trace(userExacSet);