套件 | flash.system |
類別 | public final class System |
繼承 | System Object |
語言版本: | ActionScript 3.0 |
執行階段版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
在 flash.system 套件內的其他類別中,還有額外的屬性和方法:Capabilities 類別、IME 類別及 Security 類別。
這個類別只包含靜態方法和屬性, 因此您無法建立 System 類別的新實體。
相關 API 元素
屬性 | 定義自 | ||
---|---|---|---|
constructor : Object
類別物件的參照或是特定物件實體的建構函數。 | Object | ||
freeMemory : Number [靜態] [唯讀]
配置給 Adobe® Flash® Player 或 Adobe® AIR® 但目前未使用的記憶體總數 (位元組)。 | System | ||
ime : IME [靜態] [唯讀]
目前安裝的系統 IME。 | System | ||
privateMemory : Number [靜態] [唯讀]
應用程式使用的記憶體總數 (位元組)。 | System | ||
totalMemory : uint [靜態] [唯讀]
Flash Player 或 AIR 直接配置且目前使用中的記憶體總數 (位元組)。 | System | ||
totalMemoryNumber : Number [靜態] [唯讀]
Flash Player 或 AIR 直接配置且目前使用中的記憶體總數 (位元組)。 | System | ||
useCodePage : Boolean [靜態]
Boolean 值,會決定用來解譯外部文字檔的字碼頁。 | System |
方法 | 定義自 | ||
---|---|---|---|
[靜態]
立即對指定的 XML 物件進行記憶體回收。 | System | ||
[靜態]
關閉 Flash Player。 | System | ||
[靜態]
強制執行記憶體回收程序。 | System | ||
指出物件是否有已定義的指定屬性。 | Object | ||
指出 Object 類別的實體是否位於指定為參數的物件原型鏈中。 | Object | ||
[靜態]
暫停 Flash Player 或 AIR 除錯啟動程式 (ADL)。 | System | ||
[靜態]
建議為垃圾回收器,如果回收器的 imminence 超過函數的 imminence 參數,則回收器應完成遞增式回收循環。 | System | ||
指出指定的屬性是否存在,以及是否可列舉。 | Object | ||
[靜態]
在呼叫 System.pause() 之後,繼續應用程式。 | System | ||
[靜態]
以指定的文字字串取代「剪貼簿」的內容。 | System | ||
為迴圈作業設定動態屬性的可用性。 | Object | ||
傳回代表此物件的字串,根據地區特定慣例進行格式化。 | Object | ||
會傳回指定之物件的字串形式。 | Object | ||
會傳回指定之物件的基本值。 | Object |
freeMemory | 屬性 |
ime | 屬性 |
privateMemory | 屬性 |
totalMemory | 屬性 |
totalMemory:uint
[唯讀] 語言版本: | ActionScript 3.0 |
執行階段版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Flash Player 或 AIR 直接配置且目前使用中的記憶體總數 (位元組)。
這個屬性並不會回傳所有 Adobe AIR 應用程式 或是包含 Flash Player 內容之應用程式 (例如瀏覽器) 所佔用的全部記憶體。瀏覽器或是作業系統也會消耗其他記憶體。System.privateMemory
屬性會反映出應用程式使用的所有記憶體。
如果配置的記憶體數量大於 uint 物件的最大記憶體數值 (uint.MAX_VALUE
或 4,294,967,295),則這個屬性設定為 0。System.totalMemoryNumber
屬性允許較大的值。
實作
public static function get totalMemory():uint
相關 API 元素
totalMemoryNumber | 屬性 |
totalMemoryNumber:Number
[唯讀] 語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
Flash Player 或 AIR 直接配置且目前使用中的記憶體總數 (位元組)。
這個屬性以 Number 表示,這可以使用比 System.totalMemory
屬性更高的值 (類型為 int)。
這個屬性並不會回傳所有 Adobe AIR 應用程式 或是包含 Flash Player 內容之應用程式 (例如瀏覽器) 所佔用的全部記憶體。瀏覽器或是作業系統也會消耗其他記憶體。System.privateMemory
屬性會反映出應用程式使用的所有記憶體。
實作
public static function get totalMemoryNumber():Number
相關 API 元素
useCodePage | 屬性 |
useCodePage:Boolean
語言版本: | ActionScript 3.0 |
執行階段版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Boolean 值,會決定用來解譯外部文字檔的字碼頁。當這個屬性設定為 false
時,會將外部文字檔案當做 Unicode 解譯 (當您儲存時,這些檔案必須編碼成為 Unicode)。 當這個屬性設定為 true
時,會使用正在執行應用程式之作業系統的傳統字碼頁來解譯外部文字檔案。useCodePage
的預設值是 false
。
您載入為外部檔案的文字 (使用 Loader.load()
、URLLoader 類別或 URLStream 進行),都必須儲存為 Unicode,應用程式才能將其辨識為 Unicode。若要將外部檔案編碼成為 Unicode,請將這些檔案儲存在可支援 Unicode 的應用程式中,如 Windows 上的「記事本」。
如果載入的外部文字檔案不是以 Unicode 編碼,請將 useCodePage
設定為 true
。 加入下列程式碼,以做為載入資料之檔案的第一行程式碼 (若是 Flash Professional,請將它加入第一個影格):
System.useCodePage = true;
當這段程式碼存在時,應用程式會使用作業系統的傳統字碼頁來解譯外部文字。例如,這通常是指英文 Windows 作業系統的 CP1252 和日文作業系統的 Shift-JIS。
如果您將 useCodePage
設定為 true
,Flash Player 6 和更新版本會以 Flash Player 5 的方式來處理文字 (Flash Player 5 會把所有文字當成是在執行播放程式之作業系統的傳統字碼頁中)。
如果您將 useCodePage
設定為 true
,請記得執行應用程式之作業系統的傳統字碼頁必須包含外部文字檔案所使用的字元,才能夠顯示文字。例如,如果您載入包含中文字元的外部文字檔案,那些字元將不會顯示在使用 CP1252 字碼頁的系統上,因為該字碼頁並不包含中文字元。
若要確保所有平台上的使用者都可以檢視您應用程式中的外部文字檔案,就必須將所有外部文字檔案都編碼為 Unicode,並將 useCodePage
的設定維持為 false
。如此一來,應用程式 (Flash Player 6 和更新版本,或 AIR) 就會將文字解譯為 Unicode。
實作
public static function get useCodePage():Boolean
public static function set useCodePage(value:Boolean):void
相關 API 元素
disposeXML | () | 方法 |
exit | () | 方法 |
gc | () | 方法 |
public static function gc():void
語言版本: | ActionScript 3.0 |
執行階段版本: | AIR 1.0, Flash Player 9.0.115.0, Flash Lite 4 |
強制執行記憶體回收程序。
僅適用於 Flash Player 除錯程式版本和 AIR 應用程式。在 AIR 應用程式中,只有執行於 AIR Debug Launcher (ADL) 中的內容,或已安裝的應用程式位於應用程式安全執行程序中的內容,才能使用 System.gc()
方法。
pause | () | 方法 |
pauseForGCIfCollectionImminent | () | 方法 |
public static function pauseForGCIfCollectionImminent(imminence:Number = 0.75):void
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 11, AIR 3 |
建議為垃圾回收器,如果回收器的 imminence 超過函數的 imminence 參數,則回收器應完成遞增式回收循環。
Flash 執行階段垃圾回收器演算法會隨著標示使用中的記憶體而以增量方式執行。它會在回收記憶體的未使用部分時,暫停應用程式執行。因遞增式回收循環完成而發生的暫停時間,可能會比所需的時間還長,而且在某些程式中,可能是看得見或聽得到的。此函數可讓應用程式建議完成標示及執行回收的適當執行階段。在使用者不會察覺的情況下排程數次可能的暫停,可提供較佳的使用者體驗。例如,一場遊戲可能會依照完成遊戲中的等級而呼叫此函數,因此,請減少遊戲進行中出現暫停的機會。
Imminence 是以標示回收器信任的程度而定義,因此,它的接近程度會觸發回收暫停。此函數的 imminence 引數是臨界值:只會在實際 imminence 超過臨界值時叫用垃圾回收器。否則,此呼叫立即傳回,而不會採取任何動作。
透過使用低 imminence 值呼叫這個函數,即表示應用程式接受必須完成相對較大數量的標示。另一方面,高 imminence 值表示只能在標示即將完成時暫停應用程式。一般而言,前者的暫停會比後者的長。
要釋放的記憶體總數並非取決於 imminence 參數,而是取決於可釋放的物件數目。如果應用程式最近曾經釋放大型資料結構的參考或大量物件的參考,低 imminence 參數會傾向於觸發將立即釋放那些物件的集合。
參數
imminence:Number (default = 0.75 ) — 0 到 1 之間的數字,其中 0 表示少於 imminent,1 表示最大 imminent。小於 0 的值預設為 0.25。大於 1.0 的值預設為 1.0。NaN 預設為 0.75
|
resume | () | 方法 |
setClipboard | () | 方法 |
public static function setClipboard(string:String):void
語言版本: | ActionScript 3.0 |
執行階段版本: | AIR 1.0, Flash Player 9 |
以指定的文字字串取代「剪貼簿」的內容。如果因為發生使用者事件 (例如鍵盤或輸入裝置事件處理常式) 而呼叫這個方法,則在任何安全性內容中都有效。
這個方法是提供給 Flash Player 9 中執行的 SWF 內容使用。藉此您只能將 String 內容加入剪貼簿。
Flash Player 10 內容與位於應用程式安全執行程序中的 AIR 應用程式內容可以呼叫 Clipboard.setData()
方法。
參數
string:String — 要置於系統「剪貼簿」中的純文字字串字元,會取代其目前內容 (如果有的話)。
|
相關 API 元素
System.setClipboard()
方法內,呼叫 System.totalMemory
,將系統的總記憶體數量資訊複製到系統「剪貼簿」。
package { import flash.display.Sprite; import flash.system.System; public class SystemExample extends Sprite { public function SystemExample() { System.setClipboard("System.totalMemory: " + System.totalMemory); } } }
Tue Jun 12 2018, 03:47 PM Z