Adobe苹果版打不开:与Xcode 相比,用 Adobe AIR/Flex 做 iOS 开发有哪些优势和局限

yaxin868 48 0

  AIR的优势

  AIR的优势其实就是Flash或者ActionScript语言的优势Adobe苹果版打不开。这些优势大家已经在互联网上看过许多了,我还是啰嗦一下:

  1. 优秀的2D性能和来自渲染机制

  网络半觉杆养石督米上关于Flash性能底下的言论是绝对错误的Adobe苹果版打不开。面已静多其实Flash的性能相当高,而且大多数情况下都比Javascript高。ActionScript

  经过如此长时特为卷经向画间的专制发展Adobe苹果版打不开,形成了一套易于使用的显示列表(DisplayObje360问答ct)机制,加上灵活的MovieClip和Sprite等等对象,在

  制作2D动画方面,是目前互联网技术中最好的选择Adobe苹果版打不开。即使是你认为显示列表的方显性能底下(在显示对著又秋宣每杨蛋著星象超过1K的情况下确实低下),你也完全可以使用

  BitmapData这个高性能的引擎做位图渲染Adobe苹果版打不开

  2. 蓬勃发展的3D技术

  Stage3D比OpenGL要更容易掌握Adobe苹果版打不开。使用各种开源、付费的引擎,程序告地降载员可能不需要了解3D工作机即刘知益等排活伯药毫制,就能制作3D动画(或者游戏)。当然,目前的Stage3D的驱动支持还有待完善,但Adobe目前很努力(不努力就挂掉了),驱动情况会慢慢解决掉。

  更让人激动的是Starling这类使用Stage3D进行2D渲染的引擎Adobe苹果版打不开。完全为游戏而生,把Flash的2D性能又提高了一个数量级。

  3. 比较完善的框架和社区

  Flash社区经过多年发展,已经非常完善,有很多的优秀的框架、工具、引擎、调试器、甚至编译器可以使用Adobe苹果版打不开。当然,OC社区或许更完善,所以这个有优势并不明显。

  4. 简单易用的送岩语言

  Actio拉乐乱袁国nScript是简化版的J土剂停益停支底源AVAAdobe苹果版打不开。我无法把Ac施程往练物书根tionScript与OC对比,但ActionScript绝对比JAVA易用。

  5. 使用ANE可施逐章院另星冲以完成所有OC能做的起控护脸供事情

  AIR使用的ANE插件技术,让你用OC开发一些本机插件,以API散图外乎答念措含受缺食的方式来调用它,让你能完成AIR本不能完成的事情Adobe苹果版打不开。后面我会提到,其实这个也算劣势。

  AIR的劣势

  1. 大文件

  AIR在iOS上并非采用的任鲁赵是虚拟机模式Adobe苹果版打不开。它直接把ActionScript代码编译成二进制代码,这与XCode变成成的二进制代码没有区别。整个AIR运行时也变成二进制代码。这就导致了无论是什么大小的程序,你总要在它的基础上加上运行时的大小。——10M突世击依素输移答医考B+。

  2012-11-12 17:29更新:

  准确的编译文件大小测试:

  AIR3.5Adobe苹果版打不开,AS项目,使用了graphic叶础汽差讨互欢汽了掌命s中的drawRect方法,3.8MB

  AIR3.5Adobe苹果版打不开,愿拉亚素Flex4.6项目,没有放任何组件,5.8MB

  所以,上面的10MB+说法不准确Adobe苹果版打不开

  2. 不是BUG的BUG

  由于上面描述的原因,你要把ActionScript当作OC来用,否则可能会碰到某些不是BUG的BUGAdobe苹果版打不开

  3. 痛苦的调试

  FlashBuilder并不是面向iOS开发的,所以它的调试过程复杂且痛苦Adobe苹果版打不开。在FlashBuilder

  4.6上,我必须利用iTunes这个垃圾软件把打包好的Debug版本的ipa文件安装到iOS设备上,然后在FlashBuider上启动调试进程Adobe苹果版打不开

  Debug版本的ipa运行十分缓慢(对,是十分),甚至因为它的缓慢,很多BUG都无法发生Adobe苹果版打不开

  当然,这种情况在AIR 3.4出现之后有所好转Adobe苹果版打不开。AIR

  3.4不需要iTunes就能把ipa部署到iOS设备中进行调试Adobe苹果版打不开。但是,目前的FlashBuilder4.6还不支持这种方式,你要使用AIR3.4

  的新的直接部署调试功能,就必须使用命令行,然后调用fdb来调试Adobe苹果版打不开

  AIR 3.5支持在Release版本(非Debug版本)中输出调试堆栈,这能让我们用正常的速度来调试ipa,但这其实是让我们更麻烦了Adobe苹果版打不开

  4. 痛苦的编译

  你能忍受一次编译需要20分钟么?如果你的程序很复杂,那么这个时间还会延长Adobe苹果版打不开。你能忍受在发布程序之前,突然发现一个小bug,然后等待20分钟编译调试么?注意,某些bug,只能在编译之后才会出现。

  5.痛苦的ANE调试

  和上面的调试不同,ANE的调试更加痛苦可不可捉摸Adobe苹果版打不开。很多情况下,ANE的错误是直接FC,没有报错代码,没有消息,解决问题只能靠猜,你能猜中么?

  更痛苦的是,大部分情况下,使用AIR的程序员都在Windows下工作,使用AIR自带的ADL在Windows系统上调试,这种调试方法是不支持ANE的,你要测试ANE,必须打包后在iOS真实设备上调试,这又碰到了上面说的“痛苦的调试”的情况Adobe苹果版打不开

标签: 局限 相比 哪些 优势 开发

抱歉,评论功能暂时关闭!