繁体   English   中英

如何从Flash迁移到Adobe Air iOs和Android?

[英]How to migrate from flash to adobe air iOs and android?

我有一些带有Flash的项目,我想将其转变为用于移动设备的应用程序,我开始阅读Adobe Air,并且我注意到它使用了一些诸如帧内动作脚本之类的东西,这是自as2以来我从未做过的事情。

有没有办法像普通的Flash文件一样加载脚本和类?

如果我使用的是简单的swf,是否可以轻松地将其迁移到适用于android和iOs的adobe air中?

我一直在努力寻找Adobe Air项目的示例,有人对此有建议吗?

这很容易。 我已经将30种游戏转换为可以在iOS和Android上运行。 最大的问题是它们位于AS2中,必须首先转换为AS3。 如果您简单的swf项目在AS3中,并且是使用Flash Pro开发的,则只需将网页的swf的发布输出更改为iOS或Android。 Android会更容易启动,因为您无需获得Apple开发人员帐户,创建证书和配置文件。 使用Android,您可以直接在Flash Pro中创建证书。 您首先要在PC或Mac上测试发布。 准备在设备上进行测试时,请创建一个ipa(iOS)或.apk(Android)。

是的,那里有很多屏幕尺寸。 但是您知道如何在网页中创建Flash,以便随页面调整大小并保持其纵横比吗? 在移动设备上也是如此-它将调整大小以适合所显示的任何移动屏幕。 您的游戏很可能是横向游戏。 只要保持这种方式并在您拥有的任何设备上进行测试即可(iPad会很好,因为该宽高比为1024 x 768)。 实际上,我们将舞台保持为736 x 552,可以在任何屏幕上播放。 在像iPhone 5和iPhone 6这样的高(宽)屏幕上,您的侧面会留有空间,但那又如何。

试一试,您将看到同时为两个平台编写应用程序是多么容易。 而且,您甚至不必拥有Mac(您只需一台Mac,即可将完整的应用上传到商店,但是您可以租一台Mac,然后登录10分钟以完成操作。)

将Flash项目移植到Ios或Android时,没有“方法”。 这是相同的技术,因此在理论上是兼容的。 您只需进行编译和发布,即可在大多数情况下获得Ios和Android应用程序。 现在,存在3个主要问题,当为移动发布时,可能有100%的Flash项目会遇到,在大约99%的情况下,这些问题可能意味着从头开始重新创建整个问题。

第一个问题:尺寸和密度。 如此众多的手机/平板电脑尺寸和密度,很可能您的Flash项目中没有一行代码可以处理此问题,结果您的应用程序将无法在任何移动设备上正确显示。 您将必须编写大量代码来处理该问题,并确保它不会破坏原始项目中的任何内容。 祝你好运。

第二个问题:性能和内存管理,我还没有看到一个Flash项目不会持续有系统地浪费CPU和内存。 除了为移动发布外,这对于Flash项目没有问题:我们还能浪费CPU能力吗? 不,我们还能浪费内存吗? 您将必须遍历整个Flash项目并优化所有内容,以免浪费CPU和内存。 再次祝你好运。

第三个问题:资产。 您在这里和那里使用了一堆MovieClip吗? 除非您希望应用程序滞后并耗尽电池电量,并让用户体验尽可能变差,否则移动设备上将不再可用。 必须针对移动设备,合适的资产,合适的类型,合适的大小等所有资产进行优化,否则会出现滞后和不良体验。 再次祝您好运。

这只是您将要面对的问题的一小部分。 您可能要花费数百小时的时间才能尝试将Flash项目移植到移动设备上,但最终它仍然会运行不正常。 您可能应该重新开始。

编辑:

简单准则:

  • 渲染模式:通常为“ gpu”(对位图非常有效),但也可以为“ cpu”(获得更多的CPU能力,但位图的显示效率较低),如果要使用Stage3D,则也可以为“直接”(更复杂)。

  • 显示:通常是位图,很少是矢量。 不要加大尺寸,也不要缩小尺寸。 尽可能重复使用(节省内存和电池)

  • 处理大小和密度:缩放内容是一种简单的方法,但是效率不高,只要您的位图质量好,您就可以在大多数密度和大小下获得良好的分辨率。 因为那里有很多不同的尺寸,所以您将决定是要让内容适合任何尺寸还是要在填充侧面间隙的同时显示尽可能多的内容。 AIR / Flash没有内置的处理系统,因此您必须创建自己的系统或在其中找到可以做到这一点的开源软件。 基本上,您有一个内容为nxn的内容,并且需要在nxn的移动屏幕上显示该内容,您可以计算比例因子并缩放内容并将其居中。

  • 性能,内存,电池:尽可能重用对象。 如果有经常使用的位图,请不要重复使用它。 如果您重复使用,则不需要更多的CPU,不需要更多的内存,也不需要更多的电池。

  • 如何获得性能:显示某些内容并运行代码,这是会使应用程序变慢的两件事,因此请同时进行优化和测试。 也许降低某些位图的质量会提高性能。 也许在某些地方优化代码将使您获得更多的fps等。这是每个项目的尝试和测试。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM