简单的回答是肯定的,长的答案是否定的。
您可以可以创建一个代码库并让它在Mac,Windows,iOS和Android上运行。但是,您不太可能会这样做,我会积极推荐反对这样做。
如果您使用Flex,那么您可能无法做到这一点。 Flex移动平台通常依赖于ViewNavigator
基类,这不适用于桌面。因此,移动应用程序很可能无法轻松转换为Desktop(即可能需要完整重写)。您不想在移动设备上使用而不是使用ViewNavigator
,因为它对移动性能进行了高度优化。
对于标准的AS3项目,这是可能的。这个问题伴随着移动优化和移动设计模式。如果你看一个移动应用程序,并将其与桌面应用程序(比如Evernote是跨平台的应用程序)进行比较,则其设计完全不同。您与移动应用进行交互的方式与使用桌面应用的方式完全不同,并且通常情况下翻译不好。此外,除非您使用Flex,否则滚动很难正确进行,您必须为其分配2-3个独立的(桌面,iOS和Android都具有不同的滚动行为)算法。
我推荐使用AS3。就我所知,HTML/JS在一段时间内还没有得到支持(我想说它停止在3.0,但我可能是错的)。如果您想要构建移动应用程序,则您必须使用最新版本的AIR(4.x,两周前的最新版本)必须,因为否则无法发布到iTunes Store(现在需要XCode 5,其他iOS 7特定的更新)。此外,如果您使用该SDK,请确保您使用的是最新版本的Flex(4.12)。自从Apache收购该项目以来,最新版本已经将移动优化放在了最前沿,并且与Adobe上一版本(4.6)相比,性能就像白天一样。
谢谢你,乔希 – sbxmal