[AIR] as3 之条件编译多平台妙用
http://bbs.9ria.com/thread-418864-1-1.html
一直希望as3 可以支持条件编译,即满足A时编译函数1,满足B时则编译函数2。
最佳百度了之后,发现原来是可以实现的.
首先我要实现的是在windows, 安卓和IOS下的不同编译.
-define PLATFORM::条件 布尔值
在我的windows as3项目里设置编译参数 -define PLATFORM::WINDOWS true -define PLATFORM::IOS false -define PLATFORM::ANDROID false
意思是满足WINDOS就编译,否则不编译
如果是ios或者安卓的移动项目,则这样设置 -define PLATFORM::WINDOWS false -define PLATFORM::IOS true -define PLATFORM::ANDROID true
意思是满足IOS或者安卓就编译,否则不编译
然后在我的代码里写成这样
[Actionscript3] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
|
//如果满足WINDOS则编译这里 PLATFORM::WINDOWS{ var full_imgByte:ByteArray=DataTo.getInstance().turn_BitmapData_to_ByteArrayOfJPEG_XR(bitmFull) var full_imgPath: String =Info_SignImage.FULL_IMG+ "/" +fileName+ ".wdp" } //如果满足IOS或者安卓平台的就编译这里 PLATFORM::IOS PLATFORM::ANDROID { var full_imgByte:ByteArray=DataTo.getInstance().turn_BitmapData_to_ByteArrayOfJPEG(bitmFull) var full_imgPath: String =Info_SignImage.FULL_IMG+ "/" +fileName+ ".jpg" } |
很简单,我要实现的是如果是windos系统下的air就将图片压缩为微软的图片格式,如果是IOS和安卓的就压缩为传统的图片格式, 真正实现了多平台的最佳编译,最近这个方法百试百爽.