从 Flex - mxml(动作脚本)迁移到另一种技术

Posted

技术标签:

【中文标题】从 Flex - mxml(动作脚本)迁移到另一种技术【英文标题】:Moving from Flex - mxml (action scripts) to another technology 【发布时间】:2020-01-20 03:09:10 【问题描述】:

Adobe 的 Flash 已经走到了尽头,因此所有应用程序都必须在不同的技术堆栈中重写。我们有使用 flex 编写的大型应用程序。我们有大约 400 个 mxml(+action 脚本)文件,它使用 java 作为后端技术。 所以这里有几个问题-

    有没有可以理解mxml文件并可以输出html5或javascript组件的转换工具? 如果没有可用的工具,我们应该使用最接近的技术是什么?我尝试使用 React for UI 和 java 后端,将 flex 方法转换为 REST API。这个练习很耗时,需要完全重写 UI 和后端。 是否有其他浏览器插件可以理解编译后的 mxml 或动作脚本(编译后 - .swf 文件)?

提前感谢您的帮助。

【问题讨论】:

查看 SWF2JS 是否会运行您的应用程序:***.com/a/57015598/2057709。否则,请提供有关您的应用程序及其使用的 .AS 类的更多信息。您的 SWF 的临时预览(在线演示页面)将帮助我们了解如何为您提供帮助。回答您的问题:(1) 不。这就是为什么在大约 2 年前,Adobe 向大家发出了开始代码转换的“耗时任务”的通知。 (2) 尝试 SWF2JS 通过 JS 代码解码和显示 SWF。 (3) Flash 即将结束,因为所有主要浏览器 都在结束插件。从 2020 年起,我们将拥有无插件互联网。 尽一切努力通过 Adob​​e AIR 提供应用程序(即作为桌面应用程序)。当然,说服您的管理层或您的用户可能很困难,但任何其他选择都是一项艰巨的工作。自动翻译器不会为您提供工作和可读的代码,并且用 Angular、React 或 Vue(从 Flex 转换的流行选择)重写需要很长时间。 【参考方案1】:

“最简单”的方法是使用下一个版本的 Flex,Apache Royale。

这将允许您保留代码的所有动作脚本部分,并仅使用新的 MXML 组件重写 UI 部分。它有一点学习曲线,因为许多事情的完成方式略有不同,但您不必更改您的 AS3 代码。

【讨论】:

以上是关于从 Flex - mxml(动作脚本)迁移到另一种技术的主要内容,如果未能解决你的问题,请参考以下文章

如何将自定义类导入 Flex 中的 mxml 文件? (动作脚本 3)

在 flex 应用程序中使用 mxml 优于 actionscript 有啥优势?

如何将 AES 模式从一种迁移到另一种?

Flex / Air混淆[关闭]

Altova DatabaseSpy:将整个数据库结构从一种数据库类型迁移到另一种数据库类型

如何从 flex (mxml/actionscript?