使用多个模块时优化 Flex

2024-05-08

我有一个 Flex 应用程序,加载时间非常重要(消费者网站)。我希望能够在屏幕上显示一些内容,然后允许根据需要加载其他模块。

我面临的问题是所有模块的总和比我将所有组件包含在单个 .swf 文件中要大得多。

原因很明显。例如,访问 Web 服务所需的类似乎需要大约 100kb。如果我不在 main.swf 中使用这些类,那么它们将包含在使用它们的每个模块中。因此,如果我有 5 个模块,那就浪费了额外的 500kB。

理论上我想要3个级别

main.swf - 最小可能的布局/样式/字体/框架类型内容 common.swf - 模块 1 + 模块 2 所需的附加类(例如 Web 服务) module1.swf - 站点中的模块 1 module2.swf - 站点中的模块 2

我不知道这是否可能。

我想知道是否可以加载框架的一部分而不是整个框架的 swz/swf 文件。

我确实需要将主应用程序的大小减小到 200Kb。当我添加 Web 服务和基本数据网格功能时,它会增长到 450kb。

任何吸取的教训将不胜感激。


我知道这是不久前的事,但我想我会发布另一个回复,以防有人仍在寻找答案。

我一直在研究优化 Flex 应用程序,经过一番检查后,决定使用模块。主要是因为他们有很好的优化选项。

您需要的两个 mxmlc 命令是:

mxmlc -link-report=MyAppReport.xml MyApp.mxml

and

mxmlc -load-externs=MyAppReport.xml MyModule.mxml

我的外部 swf(使用 Flex 框架)现在只有 21k。它做了很多事情(到目前为止),但即使它做得越来越多,它仍将继续使用主应用程序代码中的资源。

这是我为加速该过程而创建的批处理文件(您必须将 mxmlc 放入环境路径变量中才能使其像这样工作。控制面板 -> 系统 -> 高级 -> 环境变量,编辑路径系统变量,添加mxmlc 的路径(需要重新启动)):

cd C:\Projects\MyProject\Develop\Modules
mxmlc -link-report=MyAppReport.xml C:\Projects\MyProject\Develop\Source\Main.mxml
mxmlc -load-externs=MyAppReport.xml MyModule.mxml
move /Y MyModule.swf ..\Runtime\Modules

更多信息请点击这里:http://livedocs.adobe.com/flex/3/html/help.html?content=modular_4.html http://livedocs.adobe.com/flex/3/html/help.html?content=modular_4.html

希望有帮助!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用多个模块时优化 Flex 的相关文章

  • Swift 3 中是否提供内置内部函数?

    我可以在 Xcode 自动完成弹出窗口中看到各种内置函数 如 builtin popount builtin clz 等 我不确定这些是从哪里获取的 单击命令不会导致快速定义或任何文档 Swift 3 中是否有 builtin 或等效的内部
  • VBA 架构技巧 - 宏封装

    我拼凑了 Excel 的概念证明 以从数据库获取数据 并需要将其打包 以便可以将其分发给我们的客户 我的第一次尝试只是将所有代码放入代码模块中 但随后在 Excel 中我可以看到宏列表中的所有模块 而我实际上只想要列表中的主要模块 我猜想我
  • 舞台强制渲染/重绘

    通常我会监听 ENTER FRAME 事件并在每次渲染帧时执行代码 但是对于我的应用程序来说这太慢了 2 个 ENTER FRAME 事件之间的时间间隔为 40 毫秒 如果我改变帧率也没关系 那么是否可以在不监听事件的情况下强制Flash重
  • 如何找到 AS3 中 xml 子级的数量

    所以现场文档说这是在 XML 对象上调用 length 对于 XML 对象 此方法始终 返回整数 1 length XMLList 类的方法返回一个 对于 XMLList 对象 值为 1 仅包含一个值 我在 xml 上调用它 如下所示
  • Flash - HTTP 请求在本地主机上不起作用

    首先 我试图修复一些我一开始就没有构建的东西 项目负责人向我保证 当他离开时 它工作得很好 尽管自从他离开后我从未接触过的版本似乎已经同样的问题 一般来说 我对编程也有点陌生 所以如果我在第一篇文章中遗漏了重要信息 请告诉我 我会尝试添加更
  • jQuery.ready() 中应该包含什么内容,哪些内容应该在 jQuery.ready() 之外?

    jQuery ready 中应该包含哪些内容 哪些内容应该包含在 jQuery ready 之外 从性能的角度来看 我在某处读到将所有代码都包装在一个jQuery ready 这不是一个有效的方法 那么我的问题是 什么应该在里面 什么可以在
  • 打字总是抱怨全局模块

    我对打字稿很陌生 无论我尝试安装什么类型 我都会得到 打字错误 消息 尝试将 Angular 编译为外部模块 但它看起来像全局模块 我只是想做 typings install dt angular 我究竟做错了什么 Update 如果您对此
  • 模块化大型 Grails 应用程序的最佳实践?

    我正在开发的 Grails 应用程序变得相当大 最好将其重构为几个模块 这样我们就不必每次都重新部署整个事情 将 Grails 应用程序拆分为多个模块的最佳实践是什么 特别是 我想创建一个域类 相关服务的包 并将其作为模块在应用程序中使用
  • 检测(在服务器端)Flex 客户端何时与 BlazeDS 目标断开连接

    我想知道是否可以轻松检测 在服务器端 Flex 客户端何时与 BlazeDS 目标断开连接 我的情况很简单 我想尝试使用它来计算每个客户端在每个会话中连接的时间 我还需要能够区分客户端 即 不仅仅是计算我在 ds console 中看到的当
  • 网页优化:为什么组合文件速度更快?

    我读过 将所有 css 文件合并为一个大文件 或将所有脚本文件合并为一个脚本文件 可以减少 HTTP 请求的数量 从而加快下载速度 但我不明白这一点 我认为如果你有多个文件 最多有一个限制 我相信在现代浏览器上是 10 个 浏览器会并行下载
  • 将 Tomcat 插件添加到 Flex Builder

    无论如何 我们可以将 tomcat eclipse 插件添加到 Adob e Flex Builder 3 中吗 换句话说 我们可以将所有 Eclipse 插件也添加到 Flex Builder 中吗 我不确定 Tomcat 的情况如何 但
  • 使用非负约束进行优化

    考虑以下功能 import numpy as np import scipy optimize as opt import math Periodic indexation def pl list i return list i len l
  • 使用 Gradle 在多个 Android 应用程序之间共享 Android 库

    我有 Android 应用程序 A 和 B 我想将每个应用程序中的重复代码提取到共享库 L 中 如何使用 Gradle 执行此操作 我之前见过这个问题的一些排列 但答案很少 最接近 最好的已问问题是这个 多个 Android 应用程序依赖于
  • Mysql:多个表还是一张大表?

    这个问题已经被问过 但我还没有找到 1 个语音答案 最好这样做 1 张大桌子 其中 用户 ID 属性 1 属性 2 属性 3 属性 4 或 4 个小桌子 其中 用户 ID 属性 1 用户 ID 属性 2 用户 ID 属性 3 用户 ID 属
  • 优化 - 步进可能表现奇怪:iOS/Unity

    我正在尝试将 Unity 集成到 iOS 应用程序中 我已经遵循了这个教程http www agnosticdev com blog entry swift integrating unity and vuforia ios swift p
  • 测试 xmm/ymm 寄存器是否为零的更快方法?

    It s fortunate that PTEST does not affect the carry flag but only sets the rather awkward ZF also affects both CF and ZF
  • 如何在Flash CS5中制作通用暂停按钮?

    我正在尝试在 Flash 中制作一个按钮来暂停我的文件中正在运行的所有影片剪辑 这些影片剪辑都不是我的主时间线中的补间 它们都有自己的单独时间线 每个移动剪辑都由一个按钮触发 该按钮告诉剪辑开始播放 因此 如果有人可以帮助我创建这个暂停按钮
  • 现代 C++ 编译器是否能够在某些情况下避免调用 const 函数两次?

    例如 如果我有以下代码 class SomeDataProcessor public bool calc const SomeData d1 const SomeData d2 const private Some non mutable
  • ES6 模块范围

    我有代码 lib js var a a export var b b main js console log a a variable is not available in a global scope import b from lib
  • node.js 模块/导出系统:是否可以将模块导出为函数

    我想在 Dispatch js 中做这样的事情 function handle msg exports handle 这在调用index js中 var dispatch require Dispatch dispatch data 有任何

随机推荐