用RSL來爲你的flex程序減肥

[color=darkblue][size=large]用RSL來爲你的flex程序減肥
  問題:一個只有幾個控件的flex project也有500多k ?
  
   那是因爲FLEX在發佈的時候會帶一個框架文件,框架文件包含了所有的Flex內置類,該文件大小大概是500多K,以致一個空的FLEX項目.發佈後就有500多K
  
  解決辦法:利用RSL
  
   RSL是 Runtime Shared Library的簡稱,意思是運行時共享庫當前RSL主要有3個級別的,一個是Standard RSL(即一個網站內共享),一個是Cross-domain RSL(跨域共享),最後一個也是最關鍵的是Framework RSL(Flex框架共享)。
  Framework RSL 意思是, 把Flex的類和庫在程序運行時動態加載而不是封裝在程序裏面如果不用 Framework RSL, 你的主程序就會使用你編寫的代碼裏必須導入的類,這樣一來, 你代碼寫的越多, 需要導入越多的類, 你程序體積就越大,也就是說, 不用Framework RSL, 你的程序就是這樣的:你自己的自定義類代碼 + 你必須使用的Flex自帶類 (framework)。如果使用了Framework RSL你的程序就只包含你自己寫的類代碼而已, 體積就很小了,framework會變成另一個文件, 動態加載到你的程序裏。當一個用戶加載了任何一個使用此版本RSL的應用程序後,此版本RSL會被其緩存在flash player的cache中,並且這個cache不隨着瀏覽器緩存清空而清空,以後如果此用戶再次加載使用此版本RSL的程序的時候便不再需要加載此 RSL,加載速度將大大提高。
  
  分離RSL的步驟:
  1.在項目文件夾中點右建,選擇"properties"-"Flex Build Path"-"Library Path"
  2.該選項卡上我們看到"FrameWork linkage",默認是選中"Merged into cdoe"(打包在裏邊..大概這意思)
  3.點開下拉,選擇"runtime shared library(RSL)",按"OK“即可
  這樣我們的項目就已經使用RSL把框架文件分離出來了。
  結果:
   再查看bin-debug文件下項目的swf文件變成100多k左右了,還生成framework_3.2.0.3958.swf和 framework_3.2.0.3958.swz兩個文件。
  
  項目發佈:
   只需要把framework_3.2.0.3958.swf和framework_3.2.0.3958.swz兩個文件跟項目swf放在一目錄下傳到服務器上即可...
  本地瀏覽加載 :
   只需加載項目swf文件即可。而swz文件是動態加載到cache目錄下,以後直接調用即可,當flex版本一樣時,一切都是共享的了 [/size][/color]
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章