小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

使用RSL(Runtime Shared Libraries)來減小Flex生成的SWF文件的大小(VI) -- 使用RSL的完整示例

 360doc_gjm 2008-11-21

這個例子包括了應(yīng)用中使用RSL的完整流程。使用命令行進行編譯,但是你可以使用FlexBuilder用相同的過程來創(chuàng)建使用RSL。

記住SWC文件是一個包含SWF文件的二進制文件,而SWF文件包含運行時的定義和附屬元數(shù)據(jù)。你可以用壓縮工具比如WinZip來打開SWC文件。
在使用RSL之前,首先需要了解如何靜態(tài)鏈接一個SWC文件。

在這個例子中,應(yīng)用有一個app.mxml文件,使用ProductConfigurator.as和ProductView.as。文件目錄如下:

project/src/app.mxml
project/libsrc/ProductConfigurator.as
project/libsrc/ProductView.as
project/lib/
project/bin/


編譯這個應(yīng)用時,可以使用source-path選項將/libsrc目錄下的類鏈接進來,方法如下:

cd project/src
mxmlc -o=../bin/app.swf -source-path+=../libsrc app.mxml

這個命令添加ProductConfigurator和ProductView類到SWF文件中。


如果要創(chuàng)建庫,可以用compc來創(chuàng)建SWC文件,用下面的命令:

cd project
compc -source-path+=libsrc -debug=false -o=lib/mylib.swc
ProductConfigurator ProductView

注意要將debug選項設(shè)置為false. 生成結(jié)果是project/lib/mylib.swc文件,包含ProductConfigurator和ProductView兩個類。

現(xiàn)在可以使用新創(chuàng)建的庫來重新編譯應(yīng)用,用library-path選項來指定庫,方法如下:

cd project/src
mxmlc -o=../bin/app.swf -library-path+=../lib/mylib.swc app.mxml

創(chuàng)建庫以后,你可以用RSL來重新編譯生成應(yīng)用。完整的步驟如下:

   1. 指示編譯器不要將庫鏈接到應(yīng)用中。
   2. 準備RSL,以便于在運行時使用。
   3. 指示編譯器生成附加元數(shù)據(jù)用于加載RSL。


第一步是指定編譯生成應(yīng)用時庫中的哪些類需要排除在外。主要是使用external-library-path選項,如下面的例子所示:

cd project/src
mxmlc -o=../bin/app.swf -external-library-path+=../lib/mylib.swc app.mxml

如 果你嘗試運行app.swf,F(xiàn)lash Player會拋出一個運行時異常。因為ProductConfigurator和ProductView類還未定義。external- library-path配置選項告訴編譯器編譯這些庫,但是忽略了定義。你也可以使用externs選項,但是一般來說,使用external- library-path更方便。

下一步是準備RSL以便于能在運行時找到它。首先從SWC文件中將library.swf解壓出來。

下面是如何解壓的例子:

cd project/lib
unzip mylib.swc library.swf
mv library.swf ../bin/myrsl.swf

此例子中將library.swf更名為myrsl.swf,并把它移動到應(yīng)用SWF文件所在的目錄。

最后一步是使用RSL重新編譯應(yīng)用。主要是使用runtime-shared-libraries選項,方法如下:

cd project/src
mxmlc -o=../bin/app.swf -external-library-path+=../lib/mylib.swc
-runtime-shared-libraries=myrsl.swf app.mxml

現(xiàn)在新的SWF文件會在運行應(yīng)用前動態(tài)加載RSL了。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多