如何将Flex移动(Air mobile)应用程序编译为Flex Web应用程序?

时间:2013-11-13 16:15:26

标签: flex flash-builder flash flex-mobile

每个人都希望将其桌面(AIR)或Web(Flex)应用程序编译为移动(Air mobile)应用程序。在这里,我正朝着相反的方向前进。我想将我的Air移动应用程序编译为Flex Web应用程序并使用浏览器打开它。

我认为这是可能的,因为在一天结束时,Air移动框架几乎是flex框架的一个子集。我对么?我知道您也使用其他库,例如 mobilecomponents.swc 和servicemonitor.swc,但主要是它们应该非常相似。

在尝试完成此操作时,我在Flash Builder上创建了一个Flex项目并添加了 mobilecomponents.swc ,导入了我的移动代码并替换并编译了它。没有错误,构建器在没有任何警告的情况下编译了所有内容。

唯一的问题是,当我在资源管理器中打开swc时,屏幕全是白色,应用程序甚至没有运行。我知道swc已加载,因为鼠标上下文菜单,它显示了常规swc的所有选项,但应用程序没有运行。我试图调试它但没有发生任何事情。

显然我做错了什么。如果有人能告诉我怎么能这样做,我真的很感激。

提前致谢,

圣塞瓦斯蒂安

2 个答案:

答案 0 :(得分:3)

你有些困惑......

  

我想将我的Air移动应用程序编译为Flex Web应用程序并打开它   浏览器   我认为这是可能的,因为

你是对的;这个有可能。我在大约半天内将移动应用程序转换为基于浏览器的应用程序。我不得不改变配置文件的加载方式;但其他一切都没有改变。

如果应用程序使用AIR特定功能,则可能必须重新编写应用程序的某些功能。 File类就是一个例子。

  

Air mobile框架几乎是flex框架的一个子集。   我是对的吗?

你错了。 AIR Mobile框架完全独立于Flex Framework。 但是,Flex框架确实为Flex UI组件提供了许多移动优化皮肤,例如按钮和列表。它还提供了一些特殊的移动组件。

但是,移动设备上有与Flex框架无关的非Flex类/功能;它们是Adobe提供的核心AIR SDK的一部分。我之前提到的File类是一个。

  

在尝试完成此操作时,我在Flash上​​创建了一个Flex项目   Builder并添加了mobilecomponents.swc,导入了我的移动代码   并替换和编译它。没有错误和建设者   在没有任何警告的情况下编译了所有内容。

是的,您可以使用Flex Mobile Component设置基于浏览器的应用程序或其他桌面应用程序。但是,正如您所发现的那样,您必须手动将SWC添加到输出中。您可能还需要为移动组件添加移动主题才能正常显示。如果您想在同一个应用中混合使用移动主题和非移动主题,这可能会让人感到困惑;因为有一些交叉,Flex不会知道默认使用哪一个。

您必须提供更多信息/代码,以帮助我们诊断您收到的具体错误。

答案 1 :(得分:1)

之前我已经完成了它应该可以正常工作。

我所做的是创建一个标准的Web应用程序(我在“main”中没有代码,因此我可以轻松切换顶级应用程序标记),添加了mobilecomponents.swc,并在Project Properties中选择了移动主题(你可能需要从frameworks / themes / Mobile / mobile.swc中导入它。

之后,它应该能够在网络或空中桌面版本中使用移动组件。