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和安卓的就压缩为传统的图片格式, 真正实现了多平台的最佳编译,最近这个方法百试百爽.

[AIR] as3 之条件编译多平台妙用的更多相关文章

  1. 条件编译#ifdef的妙用详解_透彻

    这几个宏是为了进行条件编译.一般情况下,源程序中所有的行都参加编译.但是有时希望对其中一部分内容只在满足一定条件才进行编译,也就是对一部 分内容指定编译的条件,这就是“条件编译”.有时,希望当满足某条 ...

  2. 条件编译#ifdef的妙用详解

    c语言中条件编译相关的预编译指令,包括  #define.#undef.#ifdef.#ifndef.#if.#elif.#else.#endif.defined. #define           ...

  3. [AIR] AS3读取txt文档

    package { import flash.display.Sprite; import flash.events.Event; import flash.filesystem.File; impo ...

  4. [AIR] AS3.0设置屏保功能

    package com.controls { import flash.desktop.NativeApplication; import flash.events.Event; import fla ...

  5. [AIR] AS3操作文件时报SecurityError: fileWriteResource 错的解决方法

    在用File操作(移动,删除等)或者写入文件时,以下写法会报错 var file:File =File.applicationDirectory.resolvePath("1.swf&quo ...

  6. [AIR] AS3读取本地文件夹中的文件

    import flash.filesystem.File; import flash.net.URLLoader; //var dir:File = File.desktopDirectory; // ...

  7. 如何判断平台工具集去做条件编译(VC++目录、预处理器定义、$(PlatformToolsetVersion))

    作者:zyl910 从VS2010开始,提供了一个平台工作集(Platform ToolSet)选项用于配制vc编译版本.到了VS2012,更是因为默认平台工具集不支持WindowsXP,导致经常需要 ...

  8. Flash平台的分析与RIA的趋势

    10月3号,Flash Player 11 和 AIR 3.0正式提供下载,一片安静.最近这两年来,关于Flash的新闻一向是以负面为主,先是 Silverlight 的挑战,然后是 iphone和i ...

  9. DarkStone - 跨平台移动应用开发之 Flex 的崛起

    我的好友Ds 发布一个flex的消息.我帮忙转发 DarkStone - 跨平台移动应用开发之 Flex 的崛起 (2013-08-20 22:28:32)     此文章由 周戈 (DarkSton ...

随机推荐

  1. 实现a标签中的各种点击(onclick)事件的方法

    我们常用的在a标签中有点击事件:1. a href="javascript:js_method();"这是我们平台上常用的方法,但是这种方法在传递this等参数的时候很容易出问题, ...

  2. 捕获当前事件作用的对象event.target和event.srcElement

    语法: //返回事件的目标节点(触发该事件的节点). event.target //FF,Chrome event.srcElement //IE 栗子: var oDiv=document.getE ...

  3. JavaScript上传图片及时预览

    /*******************************正面图片上传预览开始****************************/        function previewImage ...

  4. Android 隐式意图和显示意图的使用场景

    本文实现一个隐式意图的应用,激活短信应用 public void click4(View view) { Intent intent = new Intent(); intent.setAction( ...

  5. Android 网络HTML查看器

    本文实现一个基于Android的网络HTML查看器 新建项目,项目布局文件如下: <LinearLayout xmlns:android="http://schemas.android ...

  6. UITableView代理方知多少+执行顺序

    一.前言 iOS中UITableView是最常用的一个控件.看了一下UITableView的代理:UITableViewDelegate 和 UITableViewDataSource.其中UITab ...

  7. 【代码笔记】iOS-翻页效果的实现

    一,效果图. 二,工程图. 三,代码. RootViewController.h #import <UIKit/UIKit.h> @interface RootViewController ...

  8. java文件复制函数

    在写代码中,经常会需要复制文件.这时候就可以把这些函数放到工具类里面. 下面是一个复制文件的函数: public class CopyFileUtil { private static String ...

  9. Sumlime Text编辑文件后快速刷新浏览器

    作为Web开发人员,我们经常会这么做:在编辑器中调整代码,保存文件,切换到浏览器,然后刷新浏览器页面来查看结果.在代码编辑过程中,我们需要重复进行很多次这些操作. 如果你使用的是Sublime Tex ...

  10. linux 中的 tar 解压

    Type at the command prompt tar xvzf file-1.0.tar.gz - tgfo uncompress a gzip tar file (.tgz or .tar. ...