Uso della classe System

Flash Player 9 e versioni successive, Adobe AIR 1.0 e versioni successive

La classe System contiene metodi e proprietà che consentono di interagire con il sistema operativo dell'utente e di recuperare informazioni sull'utilizzo della memoria corrente per il runtime. I metodi e le proprietà della classe System consentono inoltre di ascoltare gli eventi imeComposition , di indicare al runtime di caricare i file di testo esterni utilizzando la tabella codici corrente dell'utente o nel formato Unicode oppure di impostare il contenuto degli Appunti dell'utente.

Richiesta di dati sul sistema dell'utente in fase di runtime

Mediante il controllo della proprietà System.totalMemory è possibile determinare la quantità di memoria (espressa in byte) attualmente utilizzata dal runtime. Questa proprietà consente di verificare l'utilizzo della memoria e ottimizzare le applicazioni in base alle modifiche dei livelli di memoria. Ad esempio, se un particolare effetto visivo causa un significativo aumento dell'utilizzo della memoria, può essere utile modificare l'effetto o eliminarlo completamente.

La proprietà System.ime costituisce un riferimento all'editor del metodo di input (IME) installato. Questa proprietà consente di ascoltare gli eventi imeComposition ( flash.events.IMEEvent.IME_COMPOSITION ) utilizzando il metodo addEventListener() .

La terza proprietà nella classe System è useCodePage . Quando useCodePage viene impostata su true , il runtime di utilizza la tabella codici tradizionale del sistema operativo per caricare file di testo esterni. Se si imposta questa proprietà su false , il runtime di interpreta i file di testo esterni come Unicode.

Se imposta la proprietà System.useCodePage su true , tenete presente che la tabella codici tradizionale del sistema deve includere i caratteri utilizzati nel file di testo esterno per consentire la visualizzazione del testo. Ad esempio, se viene caricato un file esterno contenente caratteri cinesi, questi caratteri non possono essere visualizzati su un sistema che utilizza la tabella codici di Windows per l'inglese, poiché questa tabella codici non include i caratteri cinesi.

Per garantire che gli utenti di tutte le piattaforme siano in grado di visualizzare i file di testo esterni utilizzati nell'applicazione, codificare tutti i file di testo esterni come Unicode e lasciare la proprietà System.useCodePage impostata su false per impostazione predefinita. In questo modo, il runtime di interpreta il testo come Unicode.

Salvataggio del testo negli Appunti

La classe System include il metodo setClipboard() che consente al runtime di Flash di impostare il contenuto degli Appunti dell'utente con una stringa specifica. Per motivi di sicurezza, non viene fornito un metodo Security.getClipboard() in quanto potrebbe consentire a siti potenzialmente dannosi di accedere ai dati copiati negli Appunti dell'utente.

Il codice riportato di seguito illustra come copiare un messaggio di errore negli Appunti dell'utente quando si verifica un errore di sicurezza. Il messaggio di errore può essere utile se l'utente desidera segnalare un potenziale bug di un'applicazione.

private function securityErrorHandler(event:SecurityErrorEvent):void 
{ 
    var errorString:String = "[" + event.type + "] " + event.text; 
    trace(errorString); 
    System.setClipboard(errorString); 
}

Flash Player 10 e AIR 1.0

Potete utilizzare la classe Clipboard per leggere e scrivere dati degli Appunti in risposta a un evento utente. In AIR, non è richiesto un evento utente per il codice in esecuzione nella sandbox dell'applicazione per accedere agli Appunti.